C++ 程式查詢矩陣的轉置
矩陣是以行和列形式排列的數字的矩形陣列。矩陣的轉置是一個新矩陣,其中原始矩陣的行現在是列,反之亦然。例如。
矩陣如下所示 −
1 2 3 4 5 6 7 8 9
上述矩陣的轉置如下。
1 4 7 2 5 8 3 6 9
查詢矩陣轉置的程式如下 −
示例
#include<iostream< using namespace std; int main() { int transpose[10][10], r=3, c=2, i, j; int a[3][3] = { {1, 2} , {3, 4} , {5, 6} }; cout<<"The matrix is:"<<endl; for(i=0; i<r; ++i) { for(j=0; j<c; ++j) cout<<a[i][j]<<" "; cout<<endl; } cout<<endl; for(i=0; i<r; ++i) for(j=0; j<c; ++j) { transpose[j][i] = a[i][j]; } cout<<"The transpose of the matrix is:"<<endl; for(i=0; i<c; ++i) { for(j=0; j<r; ++j) cout<<transpose[i][j]<<" "; cout<<endl; } return 0; }
輸出
The matrix is: 1 2 3 4 5 6 The transpose of the matrix is: 1 3 5 2 4 6
在上述程式中,矩陣已初始化。然後顯示其值。這在以下程式碼段中顯示。
int a[3][3] = { {1, 2} , {3, 4} , {5, 6} }; cout<<"The matrix is:"<<endl; for(i=0; i<r; ++i) { for(j=0; j<c; ++j) cout<<a[i][j]<<" "; cout<<endl; }
使用巢狀 for 迴圈計算矩陣的轉置。這如下所示。
for(i=0; i<r; ++i) for(j=0; j<c; ++j) { transpose[j][i] = a[i][j]; }
最後,獲取轉置,並在螢幕上列印。這是透過以下程式碼段完成的。
cout<<"The transpose of the matrix is:"<<endl; for(i=0; i<c; ++i) { for(j=0; j<r; ++j) cout<<transpose[i][j]<<" "; cout<<endl; }
廣告