Processing math: 100%

今日の人気記事

  1. 開発環境の構築
  2. 変数と変数の宣言
  3. MinGW - gcc のインストール - Windows環境
  4. 乱数の生成 - rand関数

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

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

スポンサーリンク

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

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

行列の差

入力した行列「A」

A=(a11a12a13a21a22a23)

と行列「B」

B=(b11b12b13b21b22b23)

の差(引き算)

C=A+B=(a11b11a12b12a13b13a21b21a22b22a23b23)

を計算します。

サンプルプログラム

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

/*
 * 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. サンプルプログラム集
  2. 2進数を10進数に変換する
  3. 配列に格納した数値を昇順ソートする
  4. 乱数 - 0〜1のランダムな数値を出力
  5. 入力した自然数を逆順に並べ替える
  6. 入力した文字がアルファベットか数字かを判定する
  7. 入力した自然数の約数を求める
  8. ASCIIコードの表を出力する
  9. 入力した2つの自然数の最大公約数を求める
  10. 入力した2つの数値を交換する

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