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