Está en la página 1de 6
Instituto Superior de Formacién Técnica N° 177 Prof: Walter Camero PROGRAMACION 1 - EJERCICIOS RESUELTOS (Matrices y Fuciones) El presente apunte contiene ejercicios resueltos en los cuales se utilizan, para su resolucién, arregios unidimensionales (vectores) y bidimensionales (matrices). Ademds se plantean soluciones mediante la utilizacion de funciones realizando pasajes por valor y por referencia. Resuelto N° 1: Se cargan datos a una matriz de enteros de 3x4, se pide informar: a. Los datos cargados en la matriz. b. Promedio general. c. Porcentaje de positivos. d. Sumatoria de los NV pares ingresados en la matriz. ¥include ¥include ¥include void main() { int m(3] (41, £,c,cpos=0, sumpar=0; float pro 0 de "Ingrese datos: "7 £<3; £44) { po>m[£] [cli sum=sum+m[£] [¢]s if(m[£] [c] > cpos=cpostl; 1 if ((m[£] [c]# // Se calcula el promedio general cpos*100)/12; // Se calcula el porcentaje de positivos cout<<"Los N ingresados en la matriz son: "< ¥include void main() { char mat [4] [4], aux; int cuenta=0,f,cr clrscr(); cout<<"Ingrese 16 caracteres: "; for (f=0;$<4; f+) { For (c=0;c<4;c++) { cin>>mat[£] [cl 7 if ( (mat [£] [¢. cuenta++; tat) || (mat [£] [c] AN) 4 pE--) for (c=0;cmat [0] [c+1]){ //Se ordena la primer fila aux=mat [0] (cl; mat [0] [c]=mat [0] [c+]; mat [0] [c+1]=aux; c]>mat [3] [c+1]){ //Se ordena la tltima fila (3) mat [3 } 1 } cout<<"Matriz con la primer y £ltima fila ordenadas: "< include void main() { int mat [5] (5],£,c7 elrscr()7 cout<<"Ingrese datos a la matriz: "; for (£=0;£<5; £++) { Ope<5rett) ( fllc cout< #include void DatosCli();//Prototipo de funcién void main() ( clrser(); cout<>apell[f]; cout<>nom(£] 7 cout<>edad[£]; cout<>dni[£]7 } cout< >catl; cout<<"Ingrese cateto 2: "s cin>>cat2; i tagoras (cat1, cat. cout<<"La hipotenusa del tri ngulo es: "; cout< #include define dim & int BuscaVal(int v[], int);//prototipo de funcion void main() { int vector [dim],x, valor; elrser()7 cout<<"Ingresar 8 N enteros: "; for(int i=0;i>vector [ils + cout<<"Ingrese un N a buscar en el vector: "7 cin>>es valor=BuscaVal (vector, x); if(valor=-1) ( Programacién I= Ejercicios Resueltos 4 Instituto Superior de Formacién Técnica N° 177 Prof: Walter Camero cout<<"valor encontrado! !!"; cout<<"No se encontro valor! !!"; getch(); int BuscaVal(int v[],int val) ( for(int i=O;i ¥include void CargarMat ()7 int SumaFilaPar(int mat(](3]); int mat [4] [3],f,cz //Declaracién de variables globales void main() ( clrser(); CargarMat (); cout<<"La sumatoria de las filas pares es: "<>mat[£] [c] 7 int SumaFilaPar(int mat([] (31) int suma=0; for (£ $2) ( for (c=07c<3;c++) { suma=suma+mat [£] [¢]7 , return (suma); + Resuelto N° 8: Se ingresan datos a dos vectores de caracteres mediante la funcion void CargaYec(); escribir la funcion int Compara(char vecl[}, char vec2[J); la cual indicara si las cadenas de caracteres ingresadas mediante la funcién Carga¥ec() son iguales 0 no. Programacién I Ejercicios Resueltos 5 Instituto Superior de Formacién Técnica N° 177 Prof: Walter Camero include include ¥include ¥define dim 10 void CargaVec()i int Compara(char vecl[], char vec2[], int, int); char vi(dim],v2(diml; int 11,12; void main(){ int x; elrser(); cargavec () ompara (v1, v2,11,12);//Se pasa v1, if (x==0){ cout<<"Las palabras no son iguales"; , else{ cout<<"Palabras iguales"; ) getch() ) void Cargavec() { cout<<"Ingrese una palabra (m ximo 10 caracteres c/u): cin>ovl; coutv2; Llestrlen (v1); L2estrlen (v2); y las longitudes de ambos } int Compara(char vecl[], char vec2(], int lenl, int len2 int cuenta=0; { if (lenl==len2){ // Se comparan para ver si la longitud es la misma for(int i=0;ic=Llenl;it+) ( if(vecl [i]==vec2 (i]){ cuentat+ } } ) else{ return (0); } return (cuenta) ; Programacién I Ejercicios Resueltos 6

También podría gustarte