C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

行列の転置を見つけるための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;
}

  1. Pythonプログラムで行列の転置を見つける

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −行列が与えられたので、行列の転置を表示する必要があります。 行列の転置は、A[i][j]に存在する値をA[j][i]に置き換えることによって得られます。 それでは、以下の実装の概念を見てみましょう- アプローチ1:入力行列の転置を格納するための新しい行列を作成する 例 def transpose(A,B):    for i in range(M):       for j in range(N):        

  2. 行列の転置を見つけるPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 行列が与えられた場合、転置を同じ行列に格納して表示する必要があります。 行列の転置は、行を列に、列を行に変更することで得られます。つまり、A行列の転置はA[i][j]をA[j][i]に変更することで得られます。 以下に示す実装を見てみましょう- 例 N = 4 def transpose(A):    for i in range(N):       for j in range(i+1, N):     &nbs