配列のいろは
doループのきほん
program a1
integer::nm
nm=5
do n=1,nm
print *,'n=',n
enddo
endprogram a1
$ emacs a1.f90
$ a.out
n= 1
n= 2
n= 3
n= 4
n= 5
配列への代入
program a2
integar,allocate::a(:)
nm=3
allocate(a(nm))
a(1)=1
a(2)=2
a(3)=3
print *,'a(nm)=',a(nm)
endprogram a2
$ ifort a2.f90
a2.f90(3): error #5082: 構文エラー、',' が見つかりました、 ( % : . = => の 1 つを指定してください。
integar,allocate::a(:)
-------^
a2.f90(3): error #5082: 構文エラー、END-OF-STATEMENT が見つかりました、 ) , の 1 つを指定してください。
integar,allocate::a(:)
----------------------^
a2.f90(6): error #6724: 割り当て/割り当て解除オブジェクトは ALLOCATABLE または POINTER 属性を含んでいなければなりません。 [A]
allocate(a(nm))
---------^
a2.f90(6): error #8196: ALLOCATE 形状はスカラー・オブジェクトにあってはなりません。 [A]
allocate(a(nm))
---------^
a2.f90(8): error #6410: この名前は配列または関数として宣言されていません。 [A]
a(1)=1
^
a2.f90(9): error #6410: この名前は配列または関数として宣言されていません。 [A]
a(2)=2
^
a2.f90(10): error #6410: この名前は配列または関数として宣言されていません。 [A]
a(3)=3
^
コンパイルは a2.f90 で異常終了しました (コード 1)。