Elabore un programa modular que lea una matriz de m X n y la escriba poniendo
las columnas como renglones y los renglones como columnas.
Por ejemplo, si la matriz que da el usuario es:
4 7 1 3 5
2 0 6 9 7
3 1 2 6 4
Entonces el programa debe escribir la matriz transpuesta:
4 2 3
7 0 1
1 6 2
3 9 6
5 7 4
#include<iostream>
using namespace std;
void leerMatriz(int [][100], int &, int &);
void mostrarMatriz(int [][100], int &, int &);
void matriz_transpuesta(int [][100], int [][100], int &, int &);
void mostrar_matrizTranspuesta(int [][100], int &, int &);
int main()
{
int matriz[100][100], matrizTranspuesta[100][100], filas, columnas;
cout<<"indique la cantidad de filas de la matriz: ";
cin>>filas;
cout<<"indique la cantidad de columnas de la matriz: ";
cin>>columnas;
leerMatriz(matriz, filas, columnas);
mostrarMatriz(matriz, filas, columnas);
matriz_transpuesta(matriz, matrizTranspuesta, filas, columnas);
mostrar_matrizTranspuesta(matrizTranspuesta, filas, columnas);
cin.get(); cin.get();
return 0;
}
void leerMatriz(int matriz[100][100], int &filas, int &columnas)
{
for(int i=0; i<filas; i )
{
for (int j=0; j<columnas; j )
{
cout<<"ingrese un numero: ";
cin>>matriz[i][j];
}
}
}
void mostrarMatriz(int matriz[100][100], int &filas, int &columnas)
{
cout<<"\n\n la matriz que introdujo es: "<<endl;
for(int i=0; i<filas; i )
{
for (int j=0; j<columnas; j )
{
cout<<matriz[i][j]<<" ";
}
cout<<endl;
}
}
void matriz_transpuesta(int matriz[100][100], int matrizTranspuesta[100][100], int &filas, int &columnas)
{
cout<<"\n\n la matriz transpuesta es: "<<endl;
for(int i=0; i<filas; i )
{
for(int j=0; j<columnas; j )
{
matrizTranspuesta[j][i]=matriz[i][j];
}
}
}
void mostrar_matrizTranspuesta(int matrizTranspuesta[100][100], int &filas, int &columnas)
{
for(int i=0; i<columnas; i )
{
for (int j=0; j<filas; j )
{
cout<<matrizTranspuesta[i][j]<<" ";
}
cout<<endl;
}
}
0 comentarios:
Publicar un comentario