今日の人気記事

  1. 配列に格納した数値を昇順ソートする
  2. while文 - 繰り返し処理
  3. continue文 - ループをスキップ
  4. int main(void) - プログラムの基本
  5. コンパイルと実行 - GNU Compiler Collection(gcc) - Linux環境

入力した行列の差(引き算)を計算する

当ページのリンクには広告が含まれています。

スポンサーリンク

行列の差(引き算)を計算するサンプルプログラムを紹介します。

ここでは入力した 2x3 の行列の差を計算します。

行列の差

入力した行列「A」

$$ A = \left( \begin{array}{ccc} a_{11} & a_{12} & a_{13}\\ a_{21} & a_{22} & a_{23} \end{array} \right) $$

と行列「B」

$$ B = \left( \begin{array}{ccc} b_{11} & b_{12} & b_{13}\\ b_{21} & b_{22} & b_{23} \end{array} \right) $$

の差(引き算)

$$ C = A + B = \left( \begin{array}{ccc} a_{11}-b_{11} & a_{12}-b_{12} & a_{13}-b_{13}\\ a_{21}-b_{21} & a_{22}-b_{22} & a_{23}-b_{23} \end{array} \right) $$

を計算します。

サンプルプログラム

それではサンプルプログラムをみてみましょう。

/*
 * C言語のサンプルプログラム - Webkaru
 * - 入力した行列の差(引き算)を計算 -
 */
#include <stdio.h>

int main(void){

  int i, j;

  /* 行列 */
  int a[2][3], b[2][3], c[2][3];

  printf("\n1つ目の行列 A を入力\n");
  for(i=0;i<2;++i){
    for(j=0;j<3;++j){
      printf("A[%d][%d] = ", i+1, j+1);
      scanf("%d", &a[i][j]);
    }
  }

  printf("\n2つ目の行列 B を入力\n");
  for(i=0;i<2;++i){
    for(j=0;j<3;++j){
      printf("B[%d][%d] = ", i+1, j+1);
      scanf("%d", &b[i][j]);
    }
  }

  /* 行列の差(引き算) */
  for(i=0;i<2;++i){
    for(j=0;j<3;++j){
      c[i][j] = a[i][j] - b[i][j];
    }
  }

  printf("\n行列 C = A - B\n");
  for(i=0;i<2;++i){
    for(j=0;j<3;++j){
      printf("C[%d][%d] = %d\n", i+1, j+1, c[i][j]);
    }
  }

  return 0;
}

サンプルプログラムで使っている構文

実行結果

いくつかの実行結果です。

1つ目の行列 A を入力
A[1][1] = 1
A[1][2] = 1
A[1][3] = 1
A[2][1] = 1
A[2][2] = 1
A[2][3] = 1

2つ目の行列 B を入力
B[1][1] = 1
B[1][2] = 1
B[1][3] = 1
B[2][1] = 1
B[2][2] = 1
B[2][3] = 1

行列 C = A - B
C[1][1] = 0
C[1][2] = 0
C[1][3] = 0
C[2][1] = 0
C[2][2] = 0
C[2][3] = 0
1つ目の行列 A を入力
A[1][1] = 3   
A[1][2] = 5
A[1][3] = 2
A[2][1] = 12
A[2][2] = 6
A[2][3] = 21

2つ目の行列 B を入力
B[1][1] = 4
B[1][2] = 7
B[1][3] = 2
B[2][1] = 8
B[2][2] = 12
B[2][3] = 9

行列 C = A - B
C[1][1] = -1
C[1][2] = -2
C[1][3] = 0
C[2][1] = 4
C[2][2] = -6
C[2][3] = 12

このように行列の差を計算します。

サンプルプログラム の人気記事

  1. 10進数を2進数に変換する
  2. 入力した自然数の階乗を計算する
  3. 配列に格納した数値を昇順ソートする
  4. for文 - 1つ飛ばしの繰り返し処理を実行する(奇数・偶数)
  5. サンプルプログラム集
  6. フィボナッチ数の計算する
  7. 入力した2つの数値の掛け算・割り算する
  8. 2進数を10進数に変換する
  9. 2次方程式の解を計算する
  10. 入力した数値の桁数を表示する

関連記事(一部広告含む)