Arreglos-Matrices
Mat [R,C]
Columna
[C]
• Por renglones
Hacer para R = 1 a 5
Hacer para C = 1 a 5
Leer Mat [R,C]
Fin-para
Fin-para
• Por columnas
Hacer para C = 1 a 5
Hacer para R = 1 a 5
Leer Mat [R,C]
Fin-para
Fin-para
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
Nota: Para hacer el llenado de una matriz se deben de usar dos variables para los índices
y se utilizan 2 ciclos uno para los renglones y otro para las columnas; a estos ciclos se
les llama ciclos anidados (un ciclo dentro de otro ciclo).
# include <iostream>
using namespace std;
int main()
{
int mat[3][3];
for(int i=1;i<=3;i++)
{
for(int j=1;j<=3;j++)
{
cout<<"ingrese el valor de "<<i<<","<<j<<endl;
cin>>mat[i][j];
}
}
for(int i=1;i<=3;i++)
{
for(int j=1;j<=3;j++)
{
if(j<3)
{
cout<<" "<<mat[i][j];
}
else
{
cout<<" "<<mat[i][j]<<endl;
}
}
}
system ("pause");
return 0;
}
Ejercicios
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
#include<iostream>
using namespace std;
int main()
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
{
int mat[3][3],val,may,pos1,pos2;
may=1;
cout<<"ingrese los q desee colocar en la matriz"<<endl;
for (int a=1;a<=3;a++)
{
for (int e=1;e<=3;e++)
{
cin>>val;
if (val>may)
{
may=val;
pos1=a;
pos2=e;
}
else
{
may=may;
}
val=mat[a][e];
}
}
cout<<"el valor mayor de toda la matriz es : "<<may<<" "<<"y
esta situada en la pasicion "<<pos1<<"."<<pos2<<endl;
system("pause");
return 0;
}
3) Hacer un algoritmo que llene una matriz de 3 * 3. Calcular la suma de cada renglón
y almacenarla en un vector, la suma de cada columna y almacenarla en otro vector.
#include<iostream>
using namespace std;
int main()
{
int mat[3][3],vec1[3],vec2[3],val,sum1,sum2,sum3,sum4,sum5,sum6;
sum1=0;
sum2=0;
sum3=0;
sum4=0;
sum5=0;
sum6=0;
cout<<"ingrese los numeros q desea ingresar en la matriz"<<endl;
for (int a=1;a<=3;a++)
{
for (int e=1;e<=3;e++)
{
cin>>val;
mat[a][e]=val;
}
}
sum1=mat[1][1];
sum1=sum1+mat[1][2];
sum1=sum1+mat[1][3];
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
sum2=sum2+mat[2][1];
sum2=sum2+mat[2][2];
sum2=sum2+mat[2][3];
sum3=sum3+mat[3][1];
sum3=sum3+mat[3][2];
sum3=sum3+mat[3][3];
sum4=sum4+mat[1][1];
sum4=sum4+mat[2][1];
sum4=sum4+mat[3][1];
sum5=sum5+mat[1][2];
sum5=sum5+mat[2][2];
sum5=sum5+mat[3][2];
sum6=sum6+mat[1][3];
sum6=sum6+mat[2][3];
sum6=sum6+mat[3][3];
vec1[1]=sum1;
vec1[2]=sum2;
vec1[3]=sum3;
vec2[1]=sum4;
vec2[2]=sum5;
vec2[3]=sum6;
for(int i=1;i<=3;i++)
{
cout<<"la suma de la fila "<<i<<" es: "<<vec1[i]<<endl;
}
for(int o=1;o<=3;o++)
{
cout<<"la suma de la columna "<<o<<" es: "<<vec2[o]<<endl;
}
system("pause");
return 0;
}
4) Hacer un algoritmo que llene una matriz de 5 * 5. Sumar las columnas e imprimir
que columna tuvo la máxima suma y la suma de esa columna.
#include<iostream>
int main()
int mat[5][5],vec[5],val,sum1,sum2,sum3,sum4,sum5,may,pos;
may=0;
sum1=0;
sum2=0;
sum3=0;
sum4=0;
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
sum5=0;
cout<<endl;
{
for (int e=1;e<=5;e++)
cin>>val;
mat[a][e]=val;
sum1=sum1+mat[1][1];
sum1=sum1+mat[2][1];
sum1=sum1+mat[3][1];
sum1=sum1+mat[4][1];
sum1=sum1+mat[5][1];
sum2=sum2+mat[1][2];
sum2=sum2+mat[2][2];
sum2=sum2+mat[3][2];
sum2=sum2+mat[4][2];
sum2=sum2+mat[5][2];
sum3=sum3+mat[1][3];
sum3=sum3+mat[2][3];
sum3=sum3+mat[3][3];
sum3=sum3+mat[4][3];
sum3=sum3+mat[5][3];
sum4=sum4+mat[1][4];
sum4=sum4+mat[2][4];
sum4=sum4+mat[3][4];
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
sum4=sum4+mat[4][4];
sum4=sum4+mat[5][4];
sum5=sum5+mat[1][5];
sum5=sum5+mat[2][5];
sum5=sum5+mat[3][5];
sum5=sum5+mat[4][5];
sum5=sum5+mat[5][5];
vec[1]=sum1;
vec[2]=sum2;
vec[3]=sum3;
vec[4]=sum4;
vec[5]=sum5;
if (vec[i]>may)
may=vec[i];
pos=i;
else
may=may;
system("pause");
return 0;
#include<iostream>
using namespace std;
int main()
{
int mat[3][3],vec[3],val;
cout<<"ingrese los valores de la matriz"<<endl;
for (int k=1;k<=3;a++)
{
for (int e=1;e<=3;e++)
{
cin>>val;
mat[k][e]=val;
vec[1]=mat[1][1];
vec[2]=mat[2][2];
vec[3]=mat[3][3];
cout<<"el vector resultante es: "<<endl;
for (int i=1;i<=3;i++)
{
if (i<4)
{
cout<<" "<<vec[i];
}
else
cout<<" "<<vec[i]<<endl;
}
}
system("pause");
return 0;
}
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
#include<iostream>
using namespace std;
int main()
{
int mat[3][3];
for (int s=1;s<=3;a++)
{
for (int e=1;e<=3;e++)
{
if (s==e)
{
mat[s][e]=1;
}
else
{
mat[s][e]=0;
}
}
}
cout<<"la matriz resultante es: "<<endl;
for (int i=1;i<=3;i++)
{
for (int l=1;l<=3;j++)
{
if (l<3)
{
cout<<" "<<mat[i][l];
}
else
{
cout<<" "<<mat[i][l]<<endl;
cout<<endl;
cout<<endl;
system("pause");
return 0;
}
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
7) Hacer un algoritmo que llene una matriz de 2* 3 y que almacene toda la matriz en
un vector. Imprimir el vector resultante.
8) Hacer un algoritmo que llene una matriz de 4 * 4, que almacene la suma de los
renglones y la suma de las columnas en un vector. Imprimir el vector resultante.
#include<iostream>
int main()
int
mat[4][4],vec[8],val,sum1,sum2,sum3,sum4,sum5,sum6,sum7,sum8;
sum1=0;
sum2=0;
sum3=0;
sum4=0;
sum5=0;
sum6=0;
sum7=0;
sum8=0;
cin>>val;
mat[a][e]=val;
sum1=sum1+mat[1][1];
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
sum1=sum1+mat[1][2];
sum1=sum1+mat[1][3];
sum1=sum1+mat[1][4];
sum2=sum2+mat[2][1];
sum2=sum2+mat[2][2];
sum2=sum2+mat[2][3];
sum2=sum2+mat[2][4];
sum3=sum3+mat[3][1];
sum3=sum3+mat[3][2];
sum3=sum3+mat[3][3];
sum3=sum3+mat[3][4];
sum4=sum4+mat[4][1];
sum4=sum4+mat[4][2];
sum4=sum4+mat[4][3];
sum4=sum4+mat[4][4];
sum5=sum5+mat[1][1];
sum5=sum5+mat[2][1];
sum5=sum5+mat[3][1];
sum5=sum5+mat[4][1];
sum6=sum6+mat[1][2];
sum6=sum6+mat[2][2];
sum6=sum6+mat[3][2];
sum6=sum6+mat[4][2];
sum7=sum7+mat[1][3];
sum7=sum7+mat[2][3];
sum7=sum7+mat[3][3];
sum7=sum7+mat[4][3];
sum8=sum8+mat[1][4];
sum8=sum8+mat[2][4];
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
sum8=sum8+mat[3][4];
sum8=sum8+mat[4][4];
vec[1]=sum1;
vec[2]=sum2;
vec[3]=sum3;
vec[4]=sum4;
vec[5]=sum5;
vec[6]=sum6;
vec[7]=sum7;
vec[8]=sum8;
cout<<endl;
if (j<4)
else
if (i<8)
cout<<" "<<vec[i];
else
cout<<" "<<vec[i]<<endl;
system("pause");
return 0;
9) Hacer un algoritmo que llene una matriz de 5 * 6 y que imprima cuantos de los
números almacenados son ceros, cuantos son positivos y cuantos son negativos.
#include<iostream>
int main()
int mat[5][6],contp,contn,contne,val;
contp=0;
contn=0;
contne=0;
cin>>val;
if (val==0)
mat[a][e]=val;
contne=contne+1;
else
if(val<0)
mat[a][e]=val;
contn=contn+1;
else
mat[a][e]=val;
contp=contp+1;
{
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE
if (j<6)
else
system("pause");
return 0;