1program sample
2 implicit none
3
4 integer :: increment, count
5
6 ! 初期化
7 count = 0
8
9 ! 無限ループ
10 do while(.true.)
11 ! 標準入力から読み込む
12 write(*, *) ''
13 write(*, *) 'Input a positive integer (less than 10): '
14 read(*, *) increment
15
16 if(increment <= 0) then
17 write(*, *) 'error : input <= 0'
18 exit ! ループを抜ける
19 else if(increment >= 10) then
20 write(*, *) 'error : input >= 10'
21 cycle ! ループの先頭へ(これ以下の処理は行わない)
22 endif
23
24 ! countを増やす
25 count = count + increment
26
27 write(*, *) 'current count = ', count
28 enddo
29
30 write(*, *) 'last count = ', count
31
32 stop
33endprogram sample