連立方程式を行列の形で解くことができるが、まずは行列について学ぼう。
a00 ... a0n : : an0 ... ann
数学では 1, .., n の n × n 行列で計算するが、 この講義では他のプログラミング言語での配列と同じにするため、 0 成分から始めることにする。
2 つの添字のある配列は、2 次元配列に適用することが多い。
1 2 a00 a01 A = ( ) = ( ) 3 4 a10 a11
Ruby 言語では
#!/usr/koeki/bin/ruby
a = Array.new
a[0] = [1, 2]
a[1] = [3, 4]
と書いた。 Array.new は配列の大きさを知らせずに、変数 a に配列を代入する宣言であった。 Fortran では配列の大きさを知らせる必要がある。
program mathn
implicit none
integer i, j
real(8) a(0:1,0:1)
a(0, 0:1) = (/ 1.0d0, 2.0d0 /)
a(1, 0:1) = (/ 3.0d0, 4.0d0 /)
do i = 0, 1
write(*,*) (a(i,j), j = 0, 1)
enddo
end program mathn
Fortran での添字は数学と同様 1 から始まる。 a(2,2) で定義することも可能である。ただし添字は 1 から開始される。 Ruby や C との互換性の問題を考え、 この講義では 0 から始める。そのため型宣言のときに開始番号を明示している。 また、a(n_1,..,n_n)まである場合、n_n が、配列の次元を表す。この場合は 2 次元の配列となる。