大学院情報処理演習 第 2 回 (連立 1 次方程式 ) 「Fortran で配列を作る」 講義ノート目次

Ruby 言語で Array.new があるように、Fortran でも割付け配列という概念がある。

	
      program dotproduct
      implicit none
      integer, allocatable :: u(:), v(:)
      integer :: i, n = 4
      integer dotprod
      allocate (u(0:n-1), v(0:n-1)) 
      do i = 0, n
         u(i) = i - 1
         v(i) = i + 1
      end do
      write(*,*) (u(i), i = 0, n-1)
      write(*,*) (v(i), i = 0, n-1)
      do i = 0, n - 1
         dotprod = dotprod + u(i) * v(i)
      end do
      write(*,*) dotprod
      deallocate(u,v)
      end program dotproduct

宣言時に allocatable 属性をつけ、次元を実行文中で決定することができる。 次元を与えた直後に配列を allocate 文を用いて、配列の大きさを決める。 解除する必要があれば、deallocate 文を用いて、解除する。