+ All Categories
Home > Documents > EJERCICIOS DE ARREGLOS

EJERCICIOS DE ARREGLOS

Date post: 15-Oct-2014
Category:
Upload: nek0989
View: 66 times
Download: 3 times
Share this document with a friend
21
EJERCICIOS DE ARREGLOS 1.- #include<iostream> using namespace std; # define max 100 void leerdimension(int &n); void leervector(int v[],int n); void calculo (int v[],int n); void main() { int v[max],n; leerdimension(n); leervector(v,n); calculo(v,n); } void leerdimension(int &n) { cout<<"ingresar cantidad de numeros: "; cin>>n; } void leervector(int v[],int n) { int i; cout<<"ingresar elementos del vector v(i): "<<endl; for (i=0;i<n;i++) {cout<<"v["<<i<<"]:"; cin>>v[i]; } } void calculo (int v[] ,int n) { cout<<"parejas que suman 25: "; int i,j; for(i=0;i<n;i++) { for (j=i+1;j<n;j++) {if (v[i]+v[j]==25) cout<<"v["<<i<<"] "<<"y"<<" v["<<j<<"]"; cout<<" "; } } cout<<endl; }
Transcript
Page 1: EJERCICIOS DE ARREGLOS

EJERCICIOS DE ARREGLOS1.-

#include<iostream>using namespace std;# define max 100void leerdimension(int &n);void leervector(int v[],int n);void calculo (int v[],int n);void main(){

int v[max],n;leerdimension(n);leervector(v,n);calculo(v,n);

}void leerdimension(int &n){

cout<<"ingresar cantidad de numeros: ";cin>>n;

}void leervector(int v[],int n){

int i;cout<<"ingresar elementos del vector v(i): "<<endl;for (i=0;i<n;i++) {cout<<"v["<<i<<"]:"; cin>>v[i]; }

}void calculo (int v[] ,int n){ cout<<"parejas que suman 25: "; int i,j;

for(i=0;i<n;i++){

for (j=i+1;j<n;j++) {if (v[i]+v[j]==25)

cout<<"v["<<i<<"] "<<"y"<<" v["<<j<<"]"; cout<<" ";

}}cout<<endl;

}

Page 2: EJERCICIOS DE ARREGLOS

2.-#include <iostream>using namespace std;void leercadena(char cadena[]);void cuentavocales(char cadena[]);void main(){char cadena[30]; leercadena(cadena); cuentavocales(cadena);}void leercadena(char cadena[]){ cout<<"ingresar cadena: ";

cin.getline(cadena,30);}void cuentavocales(char cadena[]){ char x;

int i,cv=0;for(i=0;cadena[i]!=NULL;i++){ x=cadena[i];

if(x=='A'|| x=='E'||x=='I'||x=='O'||x=='U'||x=='a'|| x=='e'||x=='i'||x=='o'||x=='u')

cv=cv+1;}cout<<"la cantidad de vocales es: "<<cv<<endl;

}

3.-#include<iostream>using namespace std;#define max 30void primosvector(int v[]);void main(){

int v[max];primosvector(v);

}void primosvector(int v[]){

int i,j=2,c,k;cout<<"los 25 primeros numeros primos son: "<<endl;for (i=0;i<25;i++){ c=0;

while (c!=2) { for(k=1;k<=j;k++) {if(j%k==0)

c=c+1; } if(c!=2) {j=j+1; c=0; } }

v[i]=j;cout<<"v["<<i<<"]= "<<j<<endl;j=j+1;

}}

Page 3: EJERCICIOS DE ARREGLOS

4.-#include <iostream>using namespace std;#define max 100void leerdimension(int &n);void leervectores(int n,int v[],int p[]);double promediopon(int n,int v[],int p[]);void main(){ int v[max],n,p[max]; leerdimension(n);

leervectores(n,v,p);cout<<"el promedio ponderado es: "<<promediopon(n,v,p)<<endl;

}void leerdimension(int &n){

cout<<"ingresar cantidad de elementos: "<<endl;cin>>n;

}void leervectores(int n,int v[],int p[]){

int i;for(i=0;i<n;i++){

cout<<"ingresar elemento "<<i+1<<" :"<<endl;cin>>v[i];cout<<"ingresar peso "<<i+1<<" :"<<endl;cin>>p[i];

}}double promediopon(int n,int v[],int p[]){

int i;double s=0,sp=0,pp;for(i=0;i<n;i++) { s=s+v[i]*p[i]; sp=sp+p[i]; }pp=s/sp;return pp;

}

Page 4: EJERCICIOS DE ARREGLOS

5.-#include<iostream>using namespace std;#define max 100void leerdimension(int &n);void leervector(int v[],int n);void ordenarvector(int v[],int n);void cambiarvector(int &a,int &b);void imprimirvectorordenado(int v[],int n);int mediana(int v[],int n);void main(){int v[max],n; leerdimension(n); leervector(v,n); ordenarvector(v,n); cout<<"vector v[i] ordenado: "<<endl; imprimirvectorordenado(v,n); cout<<"la mediana del vector es: "<<mediana(v,n)<<endl;}void leerdimension(int &n){

do{cout<<"ingresar cantidad de numeros: ";cin>>n;}while (n<=0);

}void leervector(int v[],int n){

int i;for (i=0;i<n;i++){

cout<<"v["<<i<<"]: ";cin>>v[i];

}}void ordenarvector(int v[],int n){

int i,j,t;for(i=0;i<n-1;i++) {for(j=i+1;j<n;j++) {if(v[i]>v[j])

cambiarvector(v[i],v[j]); }

}}void cambiarvector(int &a,int &b){

int t;t=a;a=b;b=t;

}void imprimirvectorordenado(int v[],int n){

int i;for (i=0;i<n;i++){

Page 5: EJERCICIOS DE ARREGLOS

cout<<"v["<<i<<"]: "<<v[i]<<endl;}

}int mediana(int v[],int n){

int m;if (n%2!=0)

m=v[(n-1)/2];else

m=(v[n/2-1]+v[n/2])/2;return m;

}

6.-#include<iostream>using namespace std;#define max 100void leerdimension(int &n);void leervector(int v[],int n);void leernrobuscar(int &nb);void ordenarvector(int v[],int n);void cambiarvector(int &a,int &b);void imprimirvectorordenado(int v[],int n);int busquedaBinaria(int v[], int n, int nb);void main(){int v[max],n,nb; leerdimension(n); leervector(v,n); ordenarvector(v,n); cout<<"vector v[i] ordenado: "<<endl; imprimirvectorordenado(v,n); leernrobuscar(nb); cout<<"la posicion del numero "<<nb<<" es: "<<"v["<<busquedaBinaria(v,n,nb)<<"] "<<endl;}void leerdimension(int &n){

do{cout<<"ingresar cantidad de numeros: ";cin>>n;}while (n<=0);

}void leervector(int v[],int n){

int i;for (i=0;i<n;i++){

cout<<"v["<<i<<"]: ";cin>>v[i];

}}void leernrobuscar(int &nb){

cout<<"ingresar numero a buscar: ";cin>>nb;

}

Page 6: EJERCICIOS DE ARREGLOS

void ordenarvector(int v[],int n){

int i,j,t;for(i=0;i<n-1;i++) {for(j=i+1;j<n;j++) {if(v[i]>v[j])

cambiarvector(v[i],v[j]); }

}}void cambiarvector(int &a,int &b){

int t;t=a;a=b;b=t;

}void imprimirvectorordenado(int v[],int n){

int i;for (i=0;i<n;i++){

cout<<"v["<<i<<"]: "<<v[i]<<endl;}

}int busquedaBinaria(int v[], int n, int nb){ int ult=n-1,pri=0,cent; while (pri <= ult) { cent = (ult + pri)/2; if (v[cent] == nb) return cent; else if (nb < v[cent]) ult=cent-1; else pri=cent+1; } return -1;}

Page 7: EJERCICIOS DE ARREGLOS

7.-#include<iostream>using namespace std;#define max 100void leerdimension(int &n);void leervector(int v[],int n);void cantidad(int v[],int n);void main(){int v[max],n; leerdimension(n); leervector(v,n); cantidad(v,n);}void leerdimension(int &n){

do{cout<<"ingresar cantidad de numeros: ";cin>>n;}while (n<=0);

}void leervector(int v[],int n){

int i;for(i=0;i<n;i++){

cout<<"v["<<i<<"]: ";cin>>v[i];

}}void cantidad(int v[],int n){

int i,j,c;for(i=0;i<n;i++) {c=1; for(j=1+i;j<n;j++) {if(v[i]==v[j]) c=c+1; }

cout<<"la cantidad de veces que se repite el nro. "<<v[i]<<" es: "<<c<<endl;

}}

Page 8: EJERCICIOS DE ARREGLOS

8.-#include<iostream>using namespace std;#define max 100void leerdimension(int &n);void leervector(int v[],int n);int cantidad(int v[],int n,int c[]);void main(){int v[max],n,c[max]; leerdimension(n); leervector(v,n); cout<<"la(s) moda(s) de elementos almacenados es: "<<cantidad(v,n,c)<<endl;}void leerdimension(int &n){

do{cout<<"ingresar cantidad de numeros: ";cin>>n;}while (n<=0);

}void leervector(int v[],int n){

int i;for(i=0;i<n;i++){

cout<<"v["<<i<<"]: ";cin>>v[i];

}}int cantidad(int v[],int n,int c[]){

int i,j,k=0,may=0;for(i=0;i<n-1;i++){ c[i]=1;

for(j=1+i;j<n;j++) {if(v[i]==v[j]) c[i]=c[i]+1;

}}for(i=0;i<n;i++)

{if (c[i]>may)may=c[i];

}for(i=0;i<n;i++) {while(c[i]=may)

return v[i]; }

}

Page 9: EJERCICIOS DE ARREGLOS

9.-

#include <iostream>using namespace std;#define max 100 void leerdimension(int &,char p);void leervector(int e,int v[],char p);void unionvector(int a,int b, int [],int [],int []);void imprimirvector(int c[],int a, int b,char p);void main(){char p; int A[max],B[max],C[max],a,b; leerdimension(a,'A'); cout<<"ingresar elementos del primer vector A[i]: "<<endl; leervector(a,A,'A'); leerdimension(b,'B'); cout<<"ingresar elementos del segundo vector B[i]: "<<endl; leervector(b,B,'B'); unionvector(a,b,A,B,C); cout<<"el tercer vector C[i]es: "<<endl; imprimirvector( C,a,b,'C');}void leerdimension(int &e,char p){

do{ cout<<"ingresar cantidad de elementos del vector "<<p<<":"; cin>>e;}while(e<=0 || e>max);

}void leervector(int e,int v[],char p){

int i;for(i=0;i<e;i++){

cout<<p<<"["<<i<<"]:";cin>>v[i];

}}void unionvector(int a,int b, int A[],int B[], int C[]){

int i;for(i=0;i<a;i++){

C[i]=A[i];}for(i=0;i<b;i++){

C[a+i]=B[i];}

}void imprimirvector(int C[],int a, int b,char p){

int i;for(i=0;i<a+b;i++){

cout<<p<<"["<<i<<"]:"<<C[i]<<endl;}

}

Page 10: EJERCICIOS DE ARREGLOS

10.-#include <iostream>#include<cstring>using namespace std;#define max 100void leerdimension(int &n);void leervector(int n, char nombre[max][30], int nota[]);void ordenar(int n,char nombre[][30],int nota[]);void imprimir(int n,char nombre[][30],int nota[]);void merito(int n,char nombre[][30],int nota[]);void main(){ char nombre[max][30]; int n,nota[max]; leerdimension(n);

leervector(n,nombre,nota);ordenar(n,nombre,nota);cout<<"lista en orden alfabetico:"<<endl;

imprimir(n,nombre,nota);merito(n,nombre,nota);cout<<"lista en orden de merito: "<<endl;

imprimir(n,nombre,nota);}void leerdimension(int &n){

cout<<"ingresar cantidad de alumnos: "<<endl;cin>>n;

}void leervector(int n ,char nombre[][30],int nota[]){ int i; for(i=0;i<n;i++)

{cin.get(); cout<<"ingresar nombre ["<<i<<"]: "; cin.getline(nombre[i],30); cout<<"ingresar nota ["<<i<<"]: "; cin>>nota[i];}cout<<endl;

}void ordenar(int n,char nombre[][30],int nota[]){ char temp[30];

int i,j,tempn;for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) {if(strcmp(nombre[i],nombre[j])>0) {strcpy(temp,nombre[i]);

strcpy(nombre[i],nombre[j]); strcpy(nombre[j],temp); tempn=nota[i];

nota[i]=nota[j]; nota[j]=tempn; } } }

}

Page 11: EJERCICIOS DE ARREGLOS

void imprimir(int n,char nombre[][30],int nota[]){ int i;

for(i=0;i<n;i++) {cout<<nombre[i]<<": "; cout<<nota[i]<<" de nota "<<endl; }cout<<endl;

}void merito(int n,char nombre[][30],int nota[]){char camp[30];int i,j,temp;

for(i=0;i<n-1;i++){for(j=i+1;j<n;j++) if(nota[i]<nota[j]) {temp=nota[i]; nota[i]=nota[j]; nota[j]=temp;

strcpy(camp,nombre[i]);strcpy(nombre[i],nombre[j]);strcpy(nombre[j],camp);

}}

}

11.-#include <iostream>using namespace std;#define max 100 void leerdimension(int &,char p);void leervector(int e,int v[],char p);void igualdad(int a,int b,int [],int []);void main(){ int A[max],B[max],a,b; leerdimension(a,'A'); cout<<"ingresar elementos del primer vector A[i]: "<<endl; leervector(a,A,'A'); leerdimension(b,'B'); cout<<"ingresar elementos del segundo vector: B[i] "<<endl; leervector(b,B,'B'); igualdad(a,b,A,B);}void leerdimension(int &e,char p){

do{cout<<"ingresar cantidad de elementos del vector "<<p<<":";

cin>>e;}while(e<=0 || e>max);

}void leervector(int e,int v[],char p){

int i;for(i=0;i<e;i++){

cout<<p<<"["<<i<<"]:";cin>>v[i];

}}

Page 12: EJERCICIOS DE ARREGLOS

void igualdad(int a,int b,int A[],int B[]){ int i,c=0;

if(a==b){for(i=0;i<a;i++) {if(A[i]!=B[i])

c=c+1; }if(c>0)

cout<<"los vectores son diferentes"<<endl; else

cout<<"los vectores son iguales "<<endl;}else

cout<<"los vectores son diferentes"<<endl;}

12.-#include <iostream>using namespace std;#define max 100 void leernumero(int &,int &);void leervector(int n,int p,int []);void mayor(int n,int v[]);void cambio(int &a,int &b);void imprimirmayor(int n, int v[]);void main(){

int n=0,p, v[max]; leernumero(p,n); leervector(n,p,v); mayor(n,v); imprimirmayor(n,v);}void leernumero(int &p,int &n){

int s;cout<<"ingresar numero: ";cin>>p;s=p;while(s!=0) {s=s/10; n=n+1; }

}void leervector(int n,int p,int v[]){

int i;for(i=0;i<n;i++) {v[i]=p%10; p=p/10;

}}void mayor(int n,int v[]){

int i,j;for(i=0;i<n-1;i++)

Page 13: EJERCICIOS DE ARREGLOS

{ for(j=1+i;j<n;j++) {if(v[i]<v[j])

cambio(v[i],v[j]); }}

}void cambio(int &a,int &b){

int t;t=a;a=b;b=t;

}void imprimirmayor(int n, int v[]){

int i;cout<<"maximo numero: ";for(i=0;i<n;i++)

cout<<v[i];cout<<endl;

}

15.-#include <iostream>using namespace std;#define max 100void leerdimension(int &n);void leervectores(int n,int v[]);double promediopon(int n,int v[],int p[]);void main(){ int v[max],n,p[max]; leerdimension(a);

leervector(a,A);leerdimension(b);leervector(b,B);

cout<<"el promedio ponderado es: "<<promediopon(n,v,p)<<endl;}void leerdimension(int &n){

cout<<"ingresar cantidad de elementos: "<<endl;cin>>n;

}void leervector(int n,int v[]){

int i;for(i=0;i<n;i++){

cout<<"v["<<i<<"]:";cin>>v[i];

}}void buscar(){

int i;for(i=0;i<n;i++){

Page 14: EJERCICIOS DE ARREGLOS

13.-#include <iostream>using namespace std;#define max 100 void leerdimension(int &,char p);void leervector(int e,int v[],char p);int verifica(int A[],int a,int B[],int b);void elimina(int A[],int &a,int k,int b);void insertar(int A[],int&a,int B[],int &b,int k);void reporte(int A[],int a);void main(){char p; int A[max],B[max],C[max],a,b,k; leerdimension(a,'A'); cout<<"ingresar elementos del primer vector A[i]: "<<endl; leervector(a,A,'A'); leerdimension(b,'B'); cout<<"ingresar elementos del segundo vector B[i]: "<<endl; leervector(b,B,'B'); k=verifica(A,a,B,b);

if(k!=-1) {elimina(A,a,k,b); cout<<"primer arreglo"<<endl; reporte(A,a); }else {

cout<<"insercion: "; cin>>k; insertar(A,a,B,b,k); cout<<"primer arreglo: "<<endl; reporte(A,a);

}}void leerdimension(int &e,char p){

do{ cout<<"ingresar cantidad de elementos del vector "<<p<<":"; cin>>e;}while(e<=0 || e>max);

}void leervector(int e,int v[],char p){

int i;for(i=0;i<e;i++){

cout<<p<<"["<<i<<"]:";cin>>v[i];

}}

int verifica(int A[],int a,int B[],int b){

int i,j,k;for(i=0;i<a;i++){

Page 15: EJERCICIOS DE ARREGLOS

k=i;j=0;while(i<a&&j<b&&A[i]==B[j]){

i++;j++;

}if(j==b)

return k;}return -1;

}void elimina(int A[],int &a,int k,int b){

int i;for(i=k;i<a-k-b;i++)

A[i]=A[i+b];a=a-b;

}void insertar(int A[],int&a,int B[],int &b,int k){

int i,j;for(i=a-1;i>=k;i--)

A[i+b]=A[i];for(j=0;j<b;j++)

A[k+j]=B[j];a=a+b;

}void reporte(int A[],int a){

int i;cout<<"respuesta: "<<endl;for(i=0;i<a;i++)

cout<<"A["<<i<<"]:"<<A[i]<<endl;}

14.-#include <iostream>#include<cstring>using namespace std;#define max 100void leerdimension(int &n);void leervector(int n, char nombre[max][30], int precio[],char clase[]);void reporte(int n ,char nombre[][30],int precio[],char clase[]);void nacional(int n ,char nombre[][30],int precio[],char clase[]);void importados(int n ,char nombre[][30],int precio[],char clase[]);void preciomayor(int n ,char nombre[][30],int precio[]);void nacionalprecio(int n ,char nombre[][30],int precio[],char clase[]);void cantidad(int n ,char clase[]);int sumanacionales(int n ,char clase[],int precio[]);void main(){ char nombre[max][30],clase[max]; int n,precio[max]; leerdimension(n);

leervector(n,nombre,precio,clase);cout<<"valores ingresados: "<<endl;

Page 16: EJERCICIOS DE ARREGLOS

reporte(n,nombre,precio,clase);nacional(n,nombre,precio,clase);importados(n,nombre,precio,clase);preciomayor(n,nombre,precio);nacionalprecio(n,nombre,precio,clase);

cantidad(n,clase);cout<<"la suma de los precios de los productos nacionales es:

"<<sumanacionales(n,clase,precio)<<endl;}void leerdimension(int &n){

cout<<"ingresar cantidad de productos: "<<endl;cin>>n;

}void leervector(int n ,char nombre[][30],int precio[],char clase[]){ int i; for(i=0;i<n;i++)

{cin.get(); cout<<"ingresar nombre ["<<i<<"]: "; cin.getline(nombre[i],30); cout<<"ingresar precio ["<<i<<"]: "; cin>>precio[i]; cout<<"ingresar clase: "; cin>>clase[i];}cout<<endl;

}void reporte(int n ,char nombre[][30],int precio[],char clase[]){ int i;

for(i=0;i<n;i++) cout<<nombre[i]<<" "<<"precio: "<<precio[i]<<" "<<" clase:

"<<clase[i]<<endl;cout<<endl;

}void nacional(int n ,char nombre[][30],int precio[],char clase[]){ int i;

cout<<"nombre y precio de los productos nacionales: "<<endl;for(i=0;i<n;i++) {if(clase[i]=='N')

cout<<nombre[i]<<" "<<"precio: "<<precio[i]<<endl; }cout<<endl;

}void importados(int n ,char nombre[][30],int precio[],char clase[]){

int i;cout<<"nombre y precio de los productos importados: "<<endl;for(i=0;i<n;i++) {if(clase[i]=='I')

cout<<nombre[i]<<" "<<"precio: "<<precio[i]<<endl; }cout<<endl;

}void preciomayor(int n ,char nombre[][30],int precio[]){

int i;

Page 17: EJERCICIOS DE ARREGLOS

cout<<"lista de productos con precio mayor o igual que 100: "<<endl;

for(i=0;i<n;i++) {if(precio[i]>=100)

cout<<nombre[i]<<endl; }cout<<endl;

}void nacionalprecio(int n ,char nombre[][30],int precio[],char clase[]){

int i;cout<<"lista de productos nacionales con precio <=200: "<<endl;for(i=0;i<n;i++) {if(clase[i]=='N')

{if(precio[i]<=200)cout<<nombre[i]<<endl;

} }cout<<endl;

}void cantidad(int n ,char clase[]){ int i,cn=0,ci=0; cout<<"cantidad de productos nacionales y productos importados: "<<endl;

for(i=0;i<n;i++) {if(clase[i]=='N')

cn=cn+1; if(clase[i]=='I')

ci=ci+1; }cout<<"productos nacionales: "<<cn<<endl;cout<<"productos importados: "<<ci<<endl;cout<<endl;

}int sumanacionales(int n ,char clase[],int precio[]){ int i,sp=0;

for(i=0;i<n;i++) {if(clase[i]=='N')

sp=sp+precio[i]; }return sp;

}


Recommended