プログラムを見ていて「何でこんな難しい書き方をしているのだろう?」と思っ た読者も多いかと思う。もちろん内積の計算なんだから簡単に、
a = vec1[0][0]*vec2[0][0]+vec1[0][1]*vec2[1][0]+vec1[0][2]*vec2[2][0];とでもすれば十分であると思うかも知れない。しかし、例えば の行 列の掛け算をしたくなった場合、もちろん一からソースを書くのも良いが、この プログラムを使えば、
#define
で定義した L,M,N
の数値を書き
換えるだけで十分なのである。これだけならまだその効果が分からないかも知れ
ないが、後に出てくる関数と組み合わせると、このプログラムだけで、内積の計
算や の行列の掛け算など、少なくとも 2 次元の行列の掛け算は全て
可能となる。この後で出てくる関数、関数への配列の受渡しについて学習した後
に、このプログラムを関数にしてみて欲しい。
このように、一般的に使えるようなプログラムは関数としていつでも使えるよう にしておくのが便利である。