こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

プログラム

以下のプログラムを作る際、どうすれば良いでしょうか?
途中までは作ってみたのですが、そこから後がわかりません。

2行2列の2つの行列A,Bの積を求めるSubroutine, seki( A, B, C ) を作成。(註:Cには、AとBの積を計算した結果が入っているものとする)

   real*8 A(2,2), B(2,2), C(2,2)
   write(6,*) “A(1,1)=“
   read(5,*) A(1,1)
   write(6,*) “A(1,2)=“
   read(5,*) A(1,2)
   write(6,*) “A(2,1)=“
   read(5,*) A(2,1)
   write(6,*) “A(2,2)=“
   read(5,*) A(2,2)

   write(6,*) “B(1,1)=“
   read(5,*) B(1,1)
   write(6,*) “B(1,2)=“
   read(5,*) B(1,2)
   write(6,*) “B(2,1)=“
   read(5,*) B(2,1)
   write(6,*) “B(2,2)=“
   read(5,*) B(2,2)

    call seki( A, B, C)
   write(6,*) “C=“
   do 10 i=1, 2
   write(6,100) C(1,1), C(1,2)
10  continue
100 format( “|”,e15.7, e15.7, “|”)
   stop
   end

   subroutine seki( A, B, C )


↓以下がわかりません。どなたか分かる方ぜひ、教えてください。
よろしくお願いします。
使ってるエディタはxemacsです。

投稿日時 - 2007-06-07 13:11:07

QNo.3064121

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

xemacs をエディタとして使っているって言われても, 全然情報にならないんだけどなぁ.
さておき, 本当にそれだけの問題だったら
C = MATMUL(A, B)
で終わりだねぇ.
もちろん, 本当にこれで出して大目玉もらっても責任とれんけど.

投稿日時 - 2007-06-07 14:19:30

ANo.1

>↓以下がわかりません。どなたか分かる方ぜひ、教えてください。

・・・って、行列の積を求める部分まるごとじゃないですか。
駄目ですよ。
こういう場合、メイン部分は大抵設問として与えられているはずだから、
結局何も作っていない・考えていない って事だと思うんですが。
行列計算の方法は以下の通り。
http://ja.wikipedia.org/wiki/%E8%A1%8C%E5%88%97
|a11 a12|×|b11 b12|=|a11*b11+a12*b21 a11*b12+a12*b22|
|a21 a22| |b21 b22| |a21*b11+a22*b21 a21*b12+a22*b22|
なので、がんばって。

投稿日時 - 2007-06-07 13:48:25