DO~CONTINUE

第3章(教科書 p41 ~)反復処理の命令 DO ループ
3.3の DO ~ CONTINUE 分の使い方
DO n i=m1,m2,m3
・・・
n CONTINUE
・反復処理の命令文の DO 文と CONTINUE 文は,必ず対に用いる.その間の命令文が反復処理
される.
・n は,DO 文の終端の文番号である.
・i は,DO 変数である.
・m1 は,初期値パラメータである.
・m2 は,終値パラメータである.
・m3 は,増分パラメータである.
・m3 を省略した場合,m3 は 1 とみなされる.
DO n1
DO n2
DO n3
n3 CONTINUE
n2 CONTINUE
n1 CONTINUE
DO n1
DO n2
n2 CONTINUE
DO n3
DO n
DO n
DO n
n
CONTINUE
n3 CONTINUE
n1 CONTINUE
・DO ループの範囲内に,別の DO 文がある場合には,その DO 文によって指定される DO ルー
プの範囲は,外側の DO ループの範囲内に完全に含まれていなければならない.
・do 文の実行例 1
do 10 I=1,11,2
write(6,*) i
10 continue
stop
end
C:¥??¥??¥??¥????????¥Fortran>doExe1
1
3
5
7
9
11
-- Press any key to exit (Input "c" to continue) --
・do 文の実行例 2
do 10 I=11,1,-2
write(6,*) i
10 continue
stop
end
C:¥??¥??¥??¥????????¥Fortran>doExe2
11
9
7
5
3
1
-- Press any key to exit (Input "c" to continue) --
z4
番
プログラミングⅠ(反復処理の命令 DO ループ)小試験 No.6
氏名(
) h
/
/
設問1.次の DO ループに関する下記の文章中,空白に最も適当な文字や記号を書きなさい.あ
るいは,適当な方を丸印○で囲みなさい.(22 点)
DO n i=m1,m2,m3
・・・
n CONTINUE
n は,DO 文の終端の(
)である.
i は,DO(
)である.
m1 は,(
)パラメータである.
m2 は,(
)パラメータである.
m3 は,(
)パラメータである.
m3 を省略した場合,m3 は(
)とみなされる.
①
②
③
④
⑤
⑥
設問2.下記の①,②,③のように DO ループの範囲内に,別の DO 文がある場合に,空白に最
も適当な文番号n,あるいは n1,n2,n3 を書きなさい.
①
②
③
DO (
DO (
DO (
DO (
DO (
)
)
)
(
(
(
(
)
)
)
CONTINUE
CONTINUE
CONTINUE
(
(
)
)
)
DO (
DO (
DO (
)
)
CONTINUE
DO ( n3 )
(
) CONTINUE
CONTINUE
CONTINUE
設問3.下記の do 文を実行した場合に出力される数値を全て書きなさい.
①
do 10 I=1,11,2
write(6,*) i
10 continue
stop
end
②
do 10 I=11,1,-2
write(6,*) i
10 continue
stop
end
)
)
)
設問4.整数 N を読み込み,1,2,3,…,N の総和を求め,次のように印刷するプログラムを,DO
文を用いて作りなさい.
N
S
1
1
2
3
3
6
1 1
1
設問5.整数 N を読み込み, S=1+ + +・・・+ の計算を行い,印刷するプログラムを,DO
2 3
N
文を用いて作りなさい.
設問6.整数 N を読み込み,N の階乗を求め,印刷するプログラムを,DO 文を用いて作りなさ
い.
z4
番
プログラミングⅠ(反復処理の命令 DO ループ)小試験解答例
氏名(
) h
/
No.6
/
設問1.次の DO ループに関する下記の文章中,空白に最も適当な文字や記号を書きなさい.あ
るいは,適当な方を丸印○で囲みなさい.(22 点)
DO n i=m1,m2,m3
・・・
n CONTINUE
n は,DO 文の終端の(
文番号
)である.
i は,DO(
変数
)である.
m1 は,(
初期値
)パラメータである.
m2 は,(
終値
)パラメータである.
m3 は,(
増分
)パラメータである.
m3 を省略した場合,m3 は(
1
)とみなされる.
①
②
③
④
⑤
⑥
設問2.下記の①,②,③のように DO ループの範囲内に,別の DO 文がある場合に,空白に最
も適当な文番号n,あるいは n1,n2,n3 を書きなさい.
①
②
③
DO (
DO (
DO (
n1 )
n2 )
n3 )
DO (
DO (
(
(
(
(
n3
n2
n1
)
)
)
CONTINUE
CONTINUE
CONTINUE
(
(
n2
n3
n1
)
)
)
n1
n2
)
)
CONTINUE
DO ( n3
)
DO ( n
DO ( n
DO ( n
(
n
) CONTINUE
CONTINUE
CONTINUE
設問3.下記の do 文を実行した場合に出力される数値を全て書きなさい.
①
do 10 I=1,11,2
write(6,*) i
10 continue
stop
end
1
3
5
7
9
11
do 10 I=11,1,-2
write(6,*) i
10 continue
stop
end
11
9
7
5
3
1
②
)
)
)
設問4.整数 N を読み込み,1,2,3,…,N の総和を求め,次のように印刷するプログラムを,DO
文を用いて作りなさい.
N
S
1
1
2
3
3
6
integer S
read(5,*) N
write(6,10)
10 format(5x,'N',10x,'S')
20 format(i6,i11)
S=0
do 30 i=1,N
S=S+i
write(6,20)i,S
30 continue
stop
end
1 1
1
設問5.整数 N を読み込み, S=1+ + +・・・+ の計算を行い,印刷するプログラムを,DO
2 3
N
文を用いて作りなさい.
read(5,*) N
write(6,10)
10 format(5x,'N',6x,'S')
20 format(i6,f15.8)
S=0.
do 30 i=1,N
x=i
S=S+1./x
write(6,20)i,S
30 continue
stop
end
設問6.整数 N を読み込み,N の階乗を求め,印刷するプログラムを,DO 文を用いて作りなさ
い.
read(5,*) N
write(6,10)
10 format(5x,'N',12x,'N!')
20 format(i6,f15.1)
S=1.
do 30 i=1,N
x=i
S=S*x
write(6,20)i,S
30 continue
stop
end