Matrix Calculus in C++: Calculating the Transpose of a Matrix
Program that transposes tA(M,N) of a matrix A(N,M) of dimension .
using namespace std; #include< stdio.h> #include< stdlib.h> #include < iostream> int** transposed (int** A, int N, int M) { int** tA = new int* [ M ]; for (int i=0; i < M; i++) tA[i] = new int[ N ]; for(int i = 0; i < N; i++) { for(int j = 0; j < M; j++) { tA[j][i]=A[i][j]; } } return tA; } void display(int** Mat, int N, int M){ for(int i = 0; i < N; i++) { for(int j = 0; j < M; j++) { Cost < < Mat[i][j]; Cost < < "\t"; } Cost < < "\n"; } Cost < < "\n"; } main() int N=2,M=3; int** A = new int* [ N ]; for (int i=0; i < N; i++) A[i] = new int[ M ]; A[0][0]=1; A[0][1]=2; A[0][2]=3; A[1][0]=4; A[1][1]=5; A[1][2]=6; display(A,N,M); int** tA = new int* [ M ]; for (int i=0; i < M; i++) tA[i] = new int[ N ]; tA = transposed(A,N,M); Cost < < "Transposed matrix\n"; display(tA,M,N); return 0; } |