Вы находитесь на странице: 1из 26

/*Disee un programa que ingrese n numeros enteros a un arreglo lineal.

Luego se pide
calcular e imprimir:

a) El numero mas alto

b) El promedio de los numeros

c) La cantidad de cifras de cada numero

APLIQUE SUBPROGRAMAS CON PASO DE PARAMETROS */

#include<iostream>

#include<conio.h>

#include<stdlib.h>

void cantidad(int *xn);

void recarga_arreglo(int xnum[],int xn);

int maximo(int xnum[],int xn);

void cant_cifras(int xnum[],int xn);

float promedio(int xnum[],int xn);

void main()

system("color f5");

int n,num[100];

cantidad(&n);

recarga_arreglo(num,n);

cout<<"El numero maximo es: "<<maximo(num,n)<<endl;

cout<<"El promedio es: "<<promedio(num,n)<<endl;

cant_cifras(num,n);

getch();

void cantidad(int *xn)

do
{

cout<<"Ingrese el tamanio del arreglo: ";

cin>>*xn;

while(*xn>100);

cout<<endl;

void recarga_arreglo(int xnum[],int xn)

cout<<"RECARGA..ARREGLO"<<endl;

cout<<endl;

for(int i=0;i<xn;i++)

cout<<"Ingrese numero "<<i+1<<": ";

cin>>xnum[i];

cout<<endl;

float promedio(int xnum[],int xn)

int sum=0;

for(int i=0;i<xn;i++)

sum=sum+xnum[i];

return (1.0*sum)/xn;

int maximo(int xnum[],int xn)


{

int xmax=0;

for(int i=0;i<xn;i++)

if(xnum[i]>xmax)

xmax=xnum[i];

return xmax;

void cant_cifras(int xnum[],int xn)

int c,aux;

for(int i=0;i<xn;i++)

c=0;

aux=xnum[i];

while(xnum[i]!=0)

c++;

xnum[i]=xnum[i]/10;

cout<<"La cantidad de cifras de "<<aux<<" es: "<<c<<endl;

2.

/*Disear un programa que ingrese a un arreglo lineal las ventas mensuales que un trabajador
ha realizado
durante 3 aos. Se pide calcular e imprimir el promedio de las ventas de cada semestre.

Aplique subprograma con paso de parametros.*/

#include<iostream.h>

#include<conio.h>

#include<stdlib.h>

void recarga_vector(float v[]);

void promedio(float v[]);

void main()

system("color f5");

float ventas[36];

recarga_vector(ventas);

promedio(ventas);

getch();

void recarga_vector(float v[])

for(int i=1;i<=36;i++)

cout<<"Venta de mes "<<i<<": ";

cin>>v[i];

void promedio(float v[])

float sum=0;

float prom;
for(int i=1;i<=36;i++)

sum+=v[i];

if(i%6==0)

prom=sum/6;

cout<<"El promedio del semestre "<<i/6<<" es: "<<prom<<endl;

sum=0;

3.

/* Realizar un programa que ingrese a un arreglo lineal numeros enteros mayores

de 3 cifras. Se pide calcular e imprimir :

a) La cantidad de numeros capicuas del arreglo

b) La cantidad de numeros cuya cifra central sea par

APLIQUE SUBPROGRAMAS CON PASO DE PARAMETROS */

#include<iostream.h>

#include<conio.h>

#include<stdlib.h>

void tamanio(int *xn);

void recarga_arreglo(int v[],int xn);

void capicua(int v[],int xn);


void cifra_par(int v[],int xn);

void main()

system("color f5");

int n,arreglo[100],arreglo_aux[100];

tamanio(&n);

recarga_arreglo(arreglo,n);

capicua(arreglo,n);

cifra_par(arreglo,n);

getch();

void tamanio(int *xn)

do

cout<<"Ingrese el tamanio del arreglo: ";

cin>>*xn;

while(*xn>100);

cout<<endl;

void recarga_arreglo(int v[],int xn)

cout<<"INGRESE NUMEROS MAYORES DE 3 CIFRAS: "<<endl;

cout<<endl;

for(int i=1;i<=xn;i++)

do
{

cout<<"Ingrese numero "<<i<<": ";

cin>>v[i];

while(v[i]<1000);

void capicua(int v[],int xn)

int aux,num2,ct=0;

for(int i=1;i<=xn;i++)

aux=v[i];

num2=0;

while(aux!=0)

num2=num2*10 + aux%10;

aux=aux/10;

if(v[i]==num2)

ct++;

cout<<endl;

cout<<"La cantidad de numeros capicuas del arreglo es: "<<ct<<endl;

//La cantidad de numeros cuya cifra central sea par


void cifra_par(int v[],int xn)

int aux,ct=0,cc,cc2,pos,ci;

for(int i=1;i<=xn;i++)

cc=0;

cc2=0;

ci=0;

aux=v[i];

while(aux!=0)

cc++;

aux=aux/10;

aux=v[i];

if(cc%2!=0)

pos=(cc+1)/2;

while(aux!=0)

cc2++;

ci=aux%10;

if(cc2==pos)

if(ci%2==0 && ci!=0)

ct++;

aux=aux/10;

}
cout<<"La cantidad de numeros cuya cifra central es par es: "<<ct<<endl;

/* Tema: Arreglos Bidimensionales

Realizar el programa que ingrese a un arreglo bidimensional de mxn datos de

tipo entero. Se pide calcular e imprimir

a)LA SUMA DE CADA FILA DEL ARREGLO

B)EL PROMEDIO DE CADA COLUMNA DEL ARREGLO

C)LA CANTIDAD DE NUMEROS PRIMOS UBICADOS EN LA POSIOION FILA PAR

COLUMNA IMPAR

D)LA CANTIDAD DE NUMEROS PERFECTOS UBICADOS EN LAS DOS DIAGONALES PRINCIPALES

DEL ARREGLO CUANDO M ES IGUAL A N

*/

#include<iostream.h>

#include<conio.h>

void ingresar (int xm,int xn,int xnum[10][10]);

void mostrar (int xm,int xn,int xnum[10][10]);

void sumarfila (int xm,int xn,int xnum[10][10]);

void promediocol (int xm,int xn,int xnum[10][10]);

void cantidadprim (int xm,int xn,int xnum[10][10]);

bool primos(int x);

void cantidadperfectos (int xm,int xn,int xnum[10][10]);

bool perfecto(int x);

void main()

int m,n,i,j,num[10][10],cnpf;

float promc;

do
{

cout<<"Ingrese la cantidad de filas"<<endl;

cin>>m;

cout<<"Ingrese la cantidad de columnas"<<endl;

cin>>n;

while (m>10 || n>10);

ingresar(m,n,num);

mostrar(m,n,num);

sumarfila(m,n,num);

promediocol(m,n,num);

cantidadprim(m,n,num);

cantidadperfectos(m,n,num);

getch();

void ingresar(int xm,int xn,int xnum[10][10])

for(int i=1;i<=xm;i++)

for(int j=1;j<=xn;j++)

cout<<"Ingrese un numero entero"<<endl;

cin>>xnum[i][j];

}
}

void mostrar (int xm,int xn,int xnum[10][10])

for(int i=1;i<=xm;i++)

for(int j=1;j<=xn;j++)

cout<<xnum[i][j]<<" ";

cout<<endl;

void sumarfila (int xm,int xn,int xnum[10][10])

int sumf;

for(int i=1;i<=xm;i++)

sumf=0;

for(int j=1;j<=xn;j++)

sumf=sumf+xnum[i][j];

cout<<"La suma de la fila "<<i<<" es "<<sumf<<endl;

void promediocol (int xm,int xn,int xnum[10][10])

int sumc;
for(int j=1;j<=xn;j++)

sumc=0;

for(int i=1;i<=xm;i++)

sumc=sumc+xnum[i][j];

cout<<"El promedio de la columna "<<j<<" es "<<sumc/xm*1.0<<endl;

void cantidadprim (int xm,int xn,int xnum[10][10])

int cnp=0;

for(int i=1;i<=xm;i++)

for(int j=1;j<=xn;j++)

if(i%2==0 && j%2!=0)

if( primos(xnum[i][j]) )

cnp++;

cout<<"La cantidad de numeros ubicados ";

cout<<"en la posicion fila par columna impar es ";

cout<<cnp<<endl;

bool primos(int x)
{

int contdiv=0;

for(int i=1;i<=x;i++)

if(x%i==0)

contdiv++;

if(contdiv==2)

return true;

else

return false;

void cantidadperfectos (int xm,int xn,int xnum[10][10])

int cnperf=0;

if(xm==xn)

for(int i=1;i<=xm;i++)

for(int j=1;j<=xn;j++)

if(i==j || i+j==xm+1)

if(perfecto(xnum[i][j]))

cnperf++;

cout<<"La cantidad de perfectos en las dos ";

cout<<"diagonales principales del arreglo es ";

cout<<cnperf<<endl;
}

bool perfecto(int x)

int sumdiv=0;

for(int i=1;i<x;i++)

if(x%i==0)

sumdiv=sumdiv+i;

if(sumdiv==x)

return true;

else

return false;

/*OPERACIONES CON ARREGLOS

REALIZAR EL PROGRAMA QUE INGRESE N NUMEROS ENTEROS,

SE PID3E QUE A TRAVES DE UN MENU DE OPCIONES SE REALIZE LAS SIGUIENTES


OPERACIONES

INGRESAR DATOS, MOSTRAR DATOS, ELIMINAR DATOS, INSERTAR DATO Y SALIR

APLIQUE SUBPROGRAMAS

TRABAJO APLICAR PARAMETROS

*/

#include<iostream.h>

#include<conio.h>

void Ingresar();

void menu();

void Mostrar();

void Eliminar();

void Insertar();

void Salir();
int num[100],max;

void main ()

menu();

getch();

void menu()

int opcion;

do

clrscr();

cout<<" MENU "<<endl;

cout<<"--------------------------"<<endl;

cout<<"1.-Ingresar Datos"<<endl;

cout<<"2.-Mostrar Datos"<<endl;

cout<<"3.-Eliminar Datos"<<endl;

cout<<"4.-Insertar Datos"<<endl;

cout<<"5.-Salir"<<endl;

cout<<"--------------------------"<<endl;

cout<<"Ingrese su opcion ==> ";

cin>>opcion;

switch(opcion)

case 1 : Ingresar();break;
case 2 : Mostrar();break;

case 3 : Eliminar();break;

case 4 : Insertar();break;

case 5 : Salir();

while (opcion<5);

void Ingresar()

do

cout<<"Ingresar la cantidad de numeros ";

cin>>max;

while(max>100);

for(int i=1;i<=max;i++)

cout<<"Ingrese un numero entero ";

cin>>num[i];

void Mostrar()

cout<<"Los elementos del arreglo son"<<endl;

for(int i=1;i<=max;i++)

cout<<num[i]<<" ";

}
cout<<endl;

getch();

void Eliminar()

int x;

cout<<"Ingrese elemnto a eliminar";

cin>>x;

for(int i=1;i<=max;i++)

if(num[i]==x)

for(int j=i;j<=max-1;j++)

num[j]=num[j+1];

max--;

i--;

void Insertar()

int x,pos;

cout<<"Ingrese el numero a insertear";

cin>>x;

do

cout<<"Ingrese la posicion en donde insertar";


cin>>pos;

while (pos>max);

for (int i=max;i>=pos;i--)

num[i+1]=num[i];

num[pos]=x;

max++ ;

void Salir()

cout<<" Programa Finalizado";

#include<iostream.h>

#include<conio.h>

int FINAL=0,FRENTE=0,MAX;

int COLA[100];

void menu(),Mostrar(),Ingresar(),Salir(),Eliminar(),Vaciar();

bool EstaColaVacia(),EstaColaLlena();

void main()

menu();

getch();

void menu()
{

int opcion;

do

cout<<"Ingrese la cantidad maxima de elementos"<<endl;

cin>>MAX;

while(MAX>100);

do

clrscr();

cout<<" MENU"<<endl;

cout<<"-------------------------------------"<<endl;

cout<<" 1.-Ingresar el elemento"<<endl;

cout<<" 2.-Mostrar elementos"<<endl;

cout<<" 3.-Eliminar elemento"<<endl;

cout<<" 4.-Vaciar Cola"<<endl;

cout<<" 5.-Salir"<<endl;

cout<<"-------------------------------------"<<endl;

cout<<"Ingrese su opcion ==> ";

cin>>opcion;

switch(opcion)

case 1 : Ingresar();break;

case 2 : Mostrar();break;

case 3 : Eliminar();break;

case 4 : Vaciar();break;

case 5 : Salir();

}
while (opcion<5);

getch();

bool EstaColaLlena()

if(FRENTE==MAX)

return true;

else

return false;

bool EstaColaVacia()

if(FRENTE==FINAL)

return true;

else

return false;

void Ingresar()

if(EstaColaLlena())

cout<<"La cola esta llena. No se puede ingresar elementos ";

getch();

else

int ITEM;

cout<<"Ingrese un numero entero ";


cin>>ITEM;

COLA[FRENTE+1]=ITEM;

FRENTE++;

void Eliminar()

if(EstaColaVacia())

cout<<"La cola esta vacia. No se hay elementos que eliminar";

getch();

else

for(int i=1;i<=FRENTE;i++)

COLA[i]=COLA[i+1];

FRENTE--;

void Vaciar()

FINAL=FRENTE;

void Mostrar()

{
if(EstaColaVacia())

cout<<"No hay elementos que mostrar"<<endl;

else

for(int i=0;i<FRENTE;i++)

cout<<COLA[i+1]<<" ";

cout<<endl;

getch();

void Salir()

cout<<"\n\n\n\n\n Programa Finalizado"<<endl;

#include<iostream.h>

#include<conio.h>

int TOPE=0,MAX;

int PILA[100];

void menu(),Mostrar(),Ingresar(),Salir(),Eliminar(),Vaciar();

bool EstaPilaVacia(),EstaPilaLlena();

void main()

menu();

getch();

}
void menu()

int opcion;

do

cout<<"Ingrese la cantidad maxima de elementos"<<endl;

cin>>MAX;

while(MAX>100);

do

clrscr();

cout<<" MENU"<<endl;

cout<<"-------------------------------------"<<endl;

cout<<" 1.-Ingresar el elemento"<<endl;

cout<<" 2.-Mostrar elementos"<<endl;

cout<<" 3.-Eliminar elemento"<<endl;

cout<<" 4.-Vacia Pila"<<endl;

cout<<" 5.-Salir"<<endl;

cout<<"-------------------------------------"<<endl;

cout<<"Ingrese su opcion ==> ";

cin>>opcion;

switch(opcion)

case 1 : Ingresar();break;

case 2 : Mostrar();break;

case 3 : Eliminar();break;

case 4 : Vaciar();break;

case 5 : Salir();
}

while (opcion<5);

getch();

bool EstaPilaLlena()

if(TOPE==MAX)

return true;

else

return false;

bool EstaPilaVacia()

if(TOPE==0)

return true;

else

return false;

void Ingresar()

if(EstaPilaLlena())

cout<<"La pila esta llena. No se puede ingresar elementos ";

getch();

else

{
int ITEM;

cout<<"Ingrese un numero entero ";

cin>>ITEM;

TOPE++;

PILA[TOPE]=ITEM;

void Eliminar()

if(EstaPilaVacia())

cout<<"La pila esta vacia. No se hay elementos que eliminar";

else

TOPE--;

void Vaciar()

TOPE=0;

void Mostrar()

if(EstaPilaVacia())

cout<<"No hay elementos que mostrar"<<endl;

else

{
for(int i=TOPE;i>0;i--)

cout<<PILA[i]<<" ";

cout<<endl;

getch();

void Salir()

cout<<"\n\n\n\n\n Programa Finalizado"<<endl;

Вам также может понравиться