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

Arreglos en C++

sAfOrAs

SAFORAS CONTRERAS, Danny H.

Estos ejercicios representan una de las tantas malas noches que he pasado por asuntos de la universidad, no por lo 
complicado que pudieron haber sido, mas bien por un mal cálculo de tiempo, no me acuerdo en que 
circunstancias los acabe, debió ser en 3 horas o algo más. Fuera de palabrerias sin sentido, espero que sea de 
utilidad para todos aquellos que empiezan a sumarse a este fascinante mundo de la programación.
Pueden encontrar más ejemplos desarrollados por mi en los repositorios de:
http://groups.google.com.pe/group/somoscodigolibre
//codificado por sAfOrAs
//Insertar pesos en un arreglo
//Considero peso máximo de una persona 400 kilos !!!Increible
//El peso minimo uspongo que es el de un recien nacido aprox 1 kilo. 
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 50

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de pesos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

int insertarPesos(int cant,double A[])
{
int k,i,peso;

do{
cout<<"En que posicion desea insertar de [0] hasta ["<<cant­1<<"]: ";cin>>k;
if(k>=cant)
cout<<"No está habilitado esta celda para insertar un valor..."<<endl;
if(k<1)
cout<<"No trates de quererme soprender..."<<endl;
}while(k>=cant||k<1);
cout<<"Cual es el peso que desea insertar: ";cin>>peso;
cant++;
for(i=cant­1;i>=k;i­­)
{
A[i+1]=A[i];
if(k==i)
A[k]=peso;
}
return cant;
}

int main()
{
int c;
char opt;
double n[MAX]; 
cout<<"\t\t\tINSERTAR NUEVOS PESOS"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
do{
c=insertarPesos(c,n);
muestraCadena(c,n);
cout<<"Desea ingresar otro peso!!!... S/s, caso contrario pulse otra tecla: ";cin>>opt;
}while(opt=='s'||opt=='S');
return 0;
}

//Libreria: 
"leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{
do{
cout<<"Ingresa peso en A["<<i<<"] : ";
cin>>n[i];
if (n[i]<=0)
cout<<"No seas chistoso y escriba un peso correcto:"<<endl;
if(n[i]>400)
cout<<"Esta Ud. a punto de reventar!!!, lo siento no puedo creerlo."<<endl;
}while(n[i]<=1 || n[i]>400);
}

void muestraCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"A["<<i<<"] : "<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Agregar 2 alementos al final del arreglo
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 50

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de elementos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

int addElementos(int cant,int A[])
{
int add,i;

cout<<"AGREGAR ELEMENTOS"<<endl;
for(i=0;i<2;i++)
{
cout<<"Elemeto "<<i+1<<" : ";cin>>add;
cant++;
A[cant­1]=add;
}
return cant;
}

int main()
{
int c;
char opt;
int n[MAX]; 
cout<<"\t\t\tAGREGAR 2 ELEMENTOS AL FINAL"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
do{
c=addElementos(c,n);
muestraCadena(c,n);
cout<<"Desea ingresar otros dos elementos!!!... S/s, caso contrario pulse otra tecla: ";cin>>opt;
}while(opt=='s'||opt=='S');
return 0;
}
//libreria:"leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"Ingresa elemento en A["<<i<<"] : ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"A["<<i<<"] : "<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Agregar Eliminar e insertar elementos
//el tamaño maximo del arreglo es de 100 pero el numero de elementos debe elegirlo.
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 100

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de elementos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

int elegirEvento(int cant,int A[])
{
int i,k,elem,opt;
cout<<"1. Insertar elemento: "<<endl;
cout<<"2. Eliminar elemento: "<<endl;
cout<<"Elija una opcion 1 o 2: ";cin>>opt; 
switch(opt)
{
case 1:
{
cout<<"\tQue elemento desea insertar: ";cin>>elem;
do{
cout<<"\tEn que posicion desea insertar...de [0] hasta 
["<<cant­1<<"]: ";cin>>k;
if(k>(cant­1)||k<0)
cout<<"Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
cant++;
for(i=cant­1;i>=k;i­­)
{
A[i+1]=A[i];
if(k==i)
A[k]=elem;
}
}break;

case 2: 
{
do{
cout<<"\tQue posicion desea eliminar...de [0] hasta ["<<cant­1<<"]: 
";cin>>k;
if(k>(cant­1)||k<0)
cout<<"Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
for(i=k;i<cant;i++)
{
A[i]=A[i+1];
}
cant­­;
}break;

return cant;
}

int main()
{
int c;
char opt;
int n[MAX]; 
cout<<"\t\t\tAGREGAR 2 ELEMENTOS AL FINAL"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
do{
c=elegirEvento(c,n);
muestraCadena(c,n);
cout<<"Desea realizar otra operacion!!!... S/s, caso contrario pulse otra tecla: ";cin>>opt;
}while(opt=='s'||opt=='S');
return 0;
}

//Libreria: "leearray.h"

#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"Ingresa elemento en A["<<i<<"] : ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"A["<<i<<"] : "<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Agregar , eliminar e insertar y buscar elementos
//el tamaño maximo del arreglo es de 100 pero el numero de elementos debe elegirlo.
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 100

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de elementos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

int elegirEvento(int cant,int A[])
{
Opciones:
int i,k,elem,opt;
cout<<"1. Insertar elemento: "<<endl;
cout<<"2. Eliminar elemento: "<<endl;
cout<<"3. Agregar elemento: "<<endl;
cout<<"4. Buscar elemento: "<<endl;
cout<<"Elija una opcion 1 , 2 , 3 o 4: ";cin>>opt; 
switch(opt)
{
case 1:
{
cout<<"\t>>Que elemento desea insertar: ";cin>>elem;
do{
cout<<"\t>>En que posicion desea insertar...de [0] hasta 
["<<cant­1<<"]: ";cin>>k;
if(k>(cant­1)||k<0)
cout<<">>Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
cant++;
for(i=cant­1;i>=k;i­­)
{
A[i+1]=A[i];
if(k==i)
A[k]=elem;
}
}break;
case 2: 
{
do{
cout<<"\t>>Que posicion desea eliminar...de [0] hasta 
["<<cant­1<<"]: ";cin>>k;
if(k>(cant­1)||k<0)
cout<<">>Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
for(i=k;i<cant;i++)
{
A[i]=A[i+1];
}
cant­­;
}break;

case 3:
{
for(i=0;i<1;i++)
{
cout<<"\t>>Que elemento desea agregar : ";cin>>elem;
Agregar:
cant++;
A[cant­1]=elem;
}
}break;

case 4:
{

cout<<"\t>>Que elemento desea buscar: ";cin>>elem;
for(i=0;i<cant;i++)
{
if(A[i]==elem)
{
cout<<"\t>>El elemento buscado se encuentra en: 
A["<<i<<"]"<<endl;
//Añandir el elemento al final de arreglo
cout<<"\t>>El elemento se agregara al 
final"<<endl;
goto Agregar;
}
else
{
if(i==cant­1)
{
cout<<"\t>>No se encuetra el elemento que 
busca!!!"<<endl;
cout<<"\t>>Puede confirmarlo viendolo Ud. 
mismo!!!"<<endl;
}
}
}

}break;
default:system("clear");cout<<"No existe esa opcion, vuelva a intentar: "<<endl;goto 
Opciones;break;

return cant;
}

int main()
{
int c;
char opt;
int n[MAX]; 
cout<<"\t\t\tAGREGAR 2 ELEMENTOS AL FINAL"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
do{
c=elegirEvento(c,n);
muestraCadena(c,n);
cout<<"Desea realizar otra operacion!!!... S/s, caso contrario pulse otra tecla: ";cin>>opt;
}while(opt=='s'||opt=='S');
return 0;
}

//Libreria:
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"Ingresa elemento en A["<<i<<"] : ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"A["<<i<<"] : "<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Agregar Eliminar e insertar y agregar elementos
//el tamaño maximo del arreglo es de 100 pero el numero de elementos debe elegirlo.
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 100

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de elementos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

int elegirEvento(int cant,int A[])
{
Opciones:
int i,k,elem,opt;
cout<<"1. Insertar elemento: "<<endl;
cout<<"2. Eliminar elemento: "<<endl;
cout<<"3. Agregar elemento: "<<endl;
cout<<"Elija una opcion 1 , 2 o 3: ";cin>>opt; 
switch(opt)
{
case 1:
{
cout<<"\t>>Que elemento desea insertar: ";cin>>elem;
do{
cout<<"\t>>En que posicion desea insertar...de [0] hasta 
["<<cant­1<<"]: ";cin>>k;
if(k>(cant­1)||k<0)
cout<<">>Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
cant++;
for(i=cant­1;i>=k;i­­)
{
A[i+1]=A[i];
if(k==i)
A[k]=elem;
}
}break;

case 2: 
{
do{
cout<<"\t>>Que posicion desea eliminar...de [0] hasta 
["<<cant­1<<"]: ";cin>>k;
if(k>(cant­1)||k<0)
cout<<">>Ingrese una posicion valida!!!"<<endl;
}while(k>(cant­1)||k<0);
for(i=k;i<cant;i++)
{
A[i]=A[i+1];
}
cant­­;
}break;

case 3:
{
for(i=0;i<1;i++)
{
cout<<"\t>>Que elemento desea agregar : ";cin>>elem;
cant++;
A[cant­1]=elem;
}
}break;
default:system("clear");cout<<"No existe esa opcion, vuelva a intentar: "<<endl;goto 
Opciones;break;

return cant;
}

int main()
{
int c;
char opt;
int n[MAX]; 
cout<<"\t\t\tAGREGAR 2 ELEMENTOS AL FINAL"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
do{
c=elegirEvento(c,n);
muestraCadena(c,n);
cout<<"Desea realizar otra operacion!!!... S/s, caso contrario pulse otra tecla: ";cin>>opt;
}while(opt=='s'||opt=='S');
return 0;
}

//Libreria: "leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"Ingresa elemento en A["<<i<<"] : ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"A["<<i<<"] : "<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Intersección de arreglos
#include<iostream>
#include"leearray.h"
using namespace std;
#define MAX 100
int leenum(char x[1])
{
int n;
cout<<"numero de datos a ingresar en el arreglo "<<x<<": ";cin>>n;
return n;
}

void ingresedatos(int V[MAX],int n, char titu[20])
{
int i;
cout<<"Ingrese elementos para el "<<titu<<endl;
for(i=0;i<=n­1;i++)
{
cout<<"Elemento ["<<i<<"] :";
cin>>V[i];
}

int interseccion( int VA[], int na, int VB[],int nb,int VC[])
{
int i,j;
int k=0, l;
for(i=0;i<na;i++)
{
l=i;

while(l>0 && l<na)
{

if(VA[i]==VA[l­1])
{i=i+1;l=i;}
else
l­­;
}

for(j=0;j<nb;j++)
{
if(VA[i]==VB[j])
{
VC[k]=VA[i];
k++;
j=nb;
}
}

}
return k;
}

void mostrar(int V[MAX], int n, char titu[20])
{
int i;
cout<<"Los elementos del "<<titu<<" son:"<<endl;

for(i=0;i<n;i++)
{
cout<<"Elemento "<<"["<<i<<"]"<<": "<<V[i]<<endl;
}
}

int main()
{
int A[MAX],B[MAX],C[MAX];
int na,nb,elem;
cout<<"\t\t\tINTERSECCIÓN DE ARREGLOS"<<endl;
na=leenum("A");
ingresedatos(A,na,"Arreglo A: ");
nb=leenum("B");
ingresedatos(B,nb,"Arreglo B: ");
elem=interseccion(A,na,B,nb,C);
mostrar(C,elem,"Arreglo C");
return 0;
}

//Librería: leearray.h
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{

cout<<"Ingresa numero "<<i+1<<": ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Alternar elementos de 2 arreglos
#include<iostream>
#include"leearray.h"
using namespace std;
#define MAX 100
int leenum(char x[6])
{
int n;
do{
cout<<"numero de datos a ingresar en los arreglos "<<x<<": ";cin>>n;

}while(n<=1);
return n;
}

void ingresedatos(int V[MAX],int n, char titu[20])
{
int i;
cout<<"Ingrese elementos para el "<<titu<<endl;
for(i=0;i<=n­1;i++)
{
cout<<"Elemento ["<<i<<"] :";
cin>>V[i];
}

int alternarArreglo( int VA[], int na, int VB[],int nb,int VC[])
{
int i,j=0;
int k=0, ban=0;

if(na!=nb)
{
cout<<"los arreglos deben ser del mismo tamaño: "<<endl;
return 0;
}
else
{
for(i=0;i<na+nb;i++)
{
if(ban>=0 && ban<2)
{
VC[i]=VA[j];
ban++;j++;
}

if(ban>=2 && ban<4)
{
VC[i+1]=VB[k];
ban++;k++;
}

if(ban==4)
{
ban=0;
i++;
}
}

}
return na+nb;
}

void mostrar(int V[MAX], int n, char titu[20])
{
int i;
cout<<"Los elementos del "<<titu<<" son:"<<endl;

for(i=0;i<n;i++)
{
cout<<"Elemento "<<"["<<i<<"]"<<": "<<V[i]<<endl;
}
}

int main()
{
int A[MAX],B[MAX],C[MAX];
int na,nb,elem;
cout<<"\t\t\tALTERNAR ELEMENTOS DE 2 ARREGLOS"<<endl;
na=leenum("A y B");
nb=na;
ingresedatos(A,na,"Arreglo A: ");
ingresedatos(B,nb,"Arreglo B: ");
elem=alternarArreglo(A,na,B,nb,C);

mostrar(C,elem,"Arreglo C");
return 0;
}

//libreria learray.h
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<"Ingresa numero "<<i+1<<": ";
cin>>n[i];
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Suma de pares e impares de un arreglo
//Al cero '0' no se le considera par ni impar
#include<iostream>
#include"leearray.h"
using namespace std;
#define MAX 100
int leenum(char x[15])
{
int n;
do{
cout<<"Cantidad de datos a ingresar en el "<<x<<": ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

void ingresedatos(int V[MAX],int n, char titu[20])
{
int i;
cout<<"Ingrese elementos para el "<<titu<<endl;
for(i=0;i<=n­1;i++)
{
cout<<"Elemento ["<<i<<"] :";
cin>>V[i];
}

void sumarPosiciones( int VA[], int na, int VB[],int nb)
{
int i,j=0,sum=0;
int k=0, impar=0,par=0;

for(i=1;i<na;i=i+2)
{
impar=impar+VA[i];
}

for(i=2;i<nb;i=i+2)
{
par=par+VB[i];
}
cout<<"\tLa suma de impares de A es: \t"<<impar<<endl;
cout<<"\tLa suma de pares de B es  : \t"<<par<<endl;
cout<<"\tImpares A[ ] + Pares B[ ] = \t"<<par+impar<<endl;
}

int main()
{
int A[MAX],B[MAX];
int na,nb;
cout<<"\t\tSUMA DE IMPARES DE A[ ] + PARES DE  B[ ]"<<endl;
na=leenum("Arreglo A[]");
ingresedatos(A,na,"Arreglo A: ");
nb=leenum("Arreglo B[]");
ingresedatos(B,nb,"Arreglo B: ");
sumarPosiciones(A,na,B,nb);
return 0;
}
//codificado por sAfOrAs
//Calcular maximo,minimo,promedio
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 50

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de notas a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

void ordenaCadena(int cant,double n[])
{
int i,j,aux;
double sum=0,prom;
for(i=0;i<cant;i++)
{
for(j=0;j<cant­i;j++)
{
if(n[j]<n[j+1])
{aux=n[j];n[j]=n[j+1];n[j+1]=aux;}
}
sum=sum+n[i];
}
system("clear");
// muestraCadena(cant,n);
cout<<"La nota menor es: "<<n[cant­1]<<endl;
cout<<"La nota mayor es: "<<n[0]<<endl;
prom=sum/cant;
cout<<"\t\tLa suma es: "<<sum<<endl;
cout<<"\t\tEl promedio es: "<<prom<<endl;
}

int main()
{
int c;
double n[MAX]; 
cout<<"\t\tNOTAS MAS ALTAS, MAS BAJAS Y PROMEDIO"<<endl;
c=leeCantidadElem();

leeCadena(c,n);
ordenaCadena(c,n);
return 0;
}

//Libreria:"leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{

cout<<"Ingresa nota "<<i+1<<": ";
cin>>n[i];
}

void muestraCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Operaciones con Posicioes del array
//valores de prueba: 10.6 | 3.4 | 9 | 2.3|  5 |4.5|
//([0] + [3] )* [5]
//El programa permite ingresar lo valores que deseamos y elegir las posiciones que deseemos.
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 50

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de elementos a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

void OperaCadena(int cant,double A[])
{
int i,j,k;
double resul;
cout<<endl;
do{
cout<<"Seleccione posicion A[i]: ";cin>>i;
}while(i>=cant||i<0);
do{
cout<<"Seleccione posicion A[j]: ";cin>>j;
}while(j>=cant||j<0);
do{
cout<<"Seleccione posicion A[k]: ";cin>>k;
}while(k>=cant||k<0);

resul=(A[i]+A[j])*A[k];
cout<<"[A["<<i<<"]+A["<<j<<"]]*A["<<k<<"] = "<<resul<<endl;

int main()
{
int c;
double n[MAX]; 
cout<<"La operacion que se realizara es: (A[i]+A[j])*A[k] "<<endl;
c=leeCantidadElem();
leeCadena(c,n);
OperaCadena(c,n);
return 0;
}

//Libreria:"leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{

cout<<"Ingresa elementos A["<<i<<"] : ";
cin>>n[i];
}

void muestraCadena(int cant,double n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<n[i]<<endl;
}
}
//codificado por sAfOrAs
//Calcula intervalo de edades de n personas
//Considero una edad máxima de  115 años
#include<iostream>
#include "leearray.h"
using namespace std;
#define MAX 50

int leeCantidadElem()
{
int n;
do{
cout<<"Cantidad de edades a ingresar: ";cin>>n;
if(n<=0)
cout<<"...No seas payaso(a), ingresa una cantidad correcta: "<<endl;
if(n>MAX)
cout<<"...La cantidad maxima permitida es "<<MAX<<" : "<<endl;
}while(n<=0 || n>MAX);
return n;
}

void cuentaEdad(int cant,int A[])
{
int limA=0,limB=0,limC=0,limD=0,limE=0,i;
for(i=0;i<cant;i++)
{
if(A[i]<10)
limA++;
else
if(A[i]<20)
limB++;
else
if(A[i]<30)
limC++;
else
if(A[i]<40)
limD++;
else
if(A[i]<50)
limE++;
}
cout<<"      Edades < 10:...hay: "<<limA<<endl;
cout<<"10 <= Edades < 20:...hay: "<<limB<<endl;
cout<<"20 <= Edades < 30:...hay: "<<limC<<endl;
cout<<"30 <= Edades < 40:...hay: "<<limD<<endl;
cout<<"40 <= Edades < 50:...hay: "<<limE<<endl;
}

int main()
{
int c;
int n[MAX]; 
cout<<"\t\t\tLEE LAS EDADES DE N PERSONAS Y REPORTA"<<endl;
c=leeCantidadElem();
leeCadena(c,n);
cuentaEdad(c,n);
return 0;
}

//Libreria: "leearray.h"
#include<iostream>
using namespace std;
void leeCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
do{
cout<<"Ingresa edad "<<i+1<<": ";
cin>>n[i];
if (n[i]<0)
cout<<"No seas chistoso y escriba una edad correcta:"<<endl;
if(n[i]==0)
cout<<"Talves tenga algunos meses de nacido, no puedo registrarlo."<<endl;
if(n[i]>115)
cout<<"Esta Ud. a punto de pasar a mejor vida, lo siento no puedo registrarlo."<<endl;
}while(n[i]<=0 || n[i]>115);
}

void muestraCadena(int cant,int n[])
{
int i;
for(i=0;i<cant;i++)
{
cout<<n[i]<<endl;
}
}

NOTA:
Todos lo códigos fueron compilados con g++ sobre linux. Para que el compilamiento sobre windows funcione 
correctamente habrá que cambiar: system(“clear”) por system(“cls”) en todos los códigos que esté incluido esta 
función.

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