行列の差(引き算)を計算するサンプルプログラムを紹介します。
ここでは入力した 2x3 の行列の積を計算します。
行列の積
入力した行列「A」
A=(a11a12a21a22)
と行列「B」
B=(b11b12b13b21b22b23)
の積(掛け算)
C=A×B=(a11b11+a12b21a11b12+a12b22a11b13+a12b23a21b11+a22b21a21b12+a22b22a21b13+a22b23)
を計算します。
サンプルプログラム
それではサンプルプログラムをみてみましょう。
int a[2][2], b[2][3], c[2][3]; |
printf ( "\n1つ目の行列 A を入力\n" ); |
printf ( "A[%d][%d] = " , i+1, j+1); |
printf ( "\n2つ目の行列 B を入力\n" ); |
printf ( "B[%d][%d] = " , i+1, j+1); |
c[i][j] = a[i][j] * b[i][j]; |
term = term + a[i][k]*b[k][j]; |
printf ( "\n行列 C = A x B\n" ); |
printf ( "C[%d][%d] = %d\n" , i+1, j+1, c[i][j]); |
サンプルプログラムで使っている構文
実行結果
実行結果です。
1つ目の行列 A を入力
A[1][1] = 1
A[1][2] = 2
A[2][1] = 3
A[2][2] = 4
2つ目の行列 B を入力
B[1][1] = 5
B[1][2] = 6
B[1][3] = 7
B[2][1] = 8
B[2][2] = 9
B[2][3] = 10
行列 C = A x B
C[1][1] = 21
C[1][2] = 24
C[1][3] = 27
C[2][1] = 47
C[2][2] = 54
このように行列の積を計算します。
その他のサンプルプログラムも合わせてご覧ください。
C言語の基本構文についてはこちらをご覧ください。
サンプルプログラム の人気記事
- 配列に格納した数値を昇順ソートする
- 入力した2つの数値を交換する
- サンプルプログラム集
- 入力した文字がアルファベットか数字かを判定する
- 1から1000までの素数を表示する
- 入力した自然数を逆順に並べ替える
- 入力した自然数の階乗を計算する
- 自分の名前を出力する
- 2進数を10進数に変換する
- for文 - 1つ飛ばしの繰り返し処理を実行する(奇数・偶数)