program main
write(*,*) "Hello!"
end
変数。
integerはi-z,realはa-hまでで始めると無難。
program main
integer i, j, k
i = 2
j = 3
k = i + j
write(*,*) "i + j = ", k
end
関数。
メイン関数の中では、ちゃんと関数名も変数と同じように型宣言しないといけない。
program main
integer i, j, k
integer sample_f
k = f(1,2)
write(*,*) "k=",k
end
c
c
integer function sample_f(a, b)
integer a, b
f = a * b
write(*,*) '(' , a, ',' , b, ',', f, ')'
end
-
int <-> integer
double <-> real*8
-
配列をまとめてwrite。
普通なら
do i=1,10
write(*,*) A(i)
end do
と書くところを
write(*,*) (A(i),i=1,10)
と書けます。二次元なら
write (*,*) ((A(i,j),j=1,10),i=1,10)
-
Fortranでもmalloc!
まずはA(100)の動的確保。
real*8, allocatable A()
...
allocate(A(10))
do i=1,10
A(i)=i*i
end do
write(*,*) (A(i),i=1,10)
二次元配列にも使えます
real*8, allocatable A(:,:)
...
allocate(A(0:9,0:9))
-
[an error occurred while processing this directive]