3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
syasinnsya

3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#1

投稿記事 by syasinnsya » 13年前

3×3行列の積を計算して表示するプログラムを作りなさい。

という問題なのですが、本を読んだりして頑張ってみたのですが、わからないので教えていただけませんか?

C言語を始めたばかりで・・・よろしくお願いします。

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#2

投稿記事 by みけCAT » 13年前

フォーラムルールをお読みください。
何がわからないのですか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

box
記事: 2002
登録日時: 14年前

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#3

投稿記事 by box » 13年前

念のためにおたずねします。
コンピューターを使わずに手で計算することはできますか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

syosinnsya

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#4

投稿記事 by syosinnsya » 13年前

すいませんでした。フォーラムルールを読んでいませんでした。

いろいろの物を参考にして、2つの行列の成分を決めて、その積を計算して答えを返すというプログラムは作ることができたのですが、キーボードから成分の値を直接入力して計算をするというプログラムが作れません。

キーボードからの直接入力するという式はどこに書けばいいのでしょうか?

全然知識がなくて本当にすみません。

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#5

投稿記事 by みけCAT » 13年前

syosinnsya さんが書きました:いろいろの物を参考にして、2つの行列の成分を決めて、その積を計算して答えを返すというプログラムは作ることができたのですが、
まずそのプログラムを提示してください。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

box
記事: 2002
登録日時: 14年前

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#6

投稿記事 by box » 13年前

syosinnsya さんが書きました: キーボードからの直接入力するという式はどこに書けばいいのでしょうか?
ループの中で scanf() か何かを使って入力値を受け取る、というコードが書けない、ということなんでしょうか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

syosinnsya

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#7

投稿記事 by syosinnsya » 13年前

作ったプログラムは、


#include<stdio.h>

int main()
{
int i,j,k;
int a[3][3] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};
int b[3][3] = {{4, 5, 6},{1, 2, 3},{7, 8, 9}};
int c[3][3];
for ( i=0; i< 3; ++i){
for ( j=0; j< 3; ++j){
c[j] = 0;
for( k=0; k< 3; ++k){

c[j] += a[k]*b[k][j];
}
printf("%5d ",c[j]);
}
printf("\n");
}
return 0;
}

です。

ループの中で scanf() か何かを使って入力値を受け取る、というコードが書けないということです。

すみません。

box
記事: 2002
登録日時: 14年前

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#8

投稿記事 by box » 13年前

もしかして、今書いてある3重のループの「中に」、むりやりデータ入力を組み込もうと考えてはいませんか?
そうではなくて、その3重ループとは「別に」、データ入力用のループを設けてはどうでしょうか。
入力処理と計算処理とを完全に分ける、という考え方です。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

syosinnsya

Re: 3*3の行列同士の積を計算して表示するプログラムについて質問です。C言語を始めたばかりで・・・

#9

投稿記事 by syosinnsya » 13年前

おそらく、ご指摘されているようにしようとしていたと思います。

ちょっとやってみます。またわからないことがあれば書きこましてもらいたいと思います。

閉鎖

“C言語何でも質問掲示板” へ戻る