前頁 メニュー 次頁
for〜next構文(for区) ☆☆☆
FOR〜NEXT構文は,
FOR 制御変数 = 始値 TO 限界 STEP 増分
………
NEXT 制御変数
の形に書く。
制御変数は単純変数を書く。添字付き変数を制御変数にすることはできない。
始値,限界,増分は数値式。
NEXT文にはFOR文に書いた制御変数と同じ変数を書く。
限界,増分はFOR文が実行されたときに計算され,この構文の繰り返しを終了するまでその値が用いられる。
増分が正の数のときは,次のように動作する。
(1)制御変数に始値を代入する。
(2)制御変数の値が限界より大きければ,この構文の処理を終えてNEXT文の次の行に進む。
(3)NEXT文を実行すると,制御変数に増分が加算され,(2)に戻る。
増分が負の数のときの動作は,(2)の段階で大小が逆になる。
「STEP増分」を省略すると,増分は1とみなされる。
例
10 FOR N=10 TO 1 STEP -1
20 PRINT N
30 NEXT N
40 END
FOR〜NEXTループを逆順に実行したいときは,この例のように「STEP -1」を指定する。
○ EXIT FOR
DO〜LOOPの場合のEXIT DO文と同様に,EXIT FOR文でFOR〜NEXTの繰り返しを抜けることができる。
例
10 INPUT n
20 FOR f=2 TO n-1
30 IF MOD(n,f)=0 THEN
40 PRINT f
50 EXIT FOR
60 END IF
70 NEXT f
80 END
FOR〜NEXTが入れ子になっている場合,EXIT FORは最も内側のループからの脱出を意味する。外側のループを一気に抜けたいときは,GOTO文
を用いる。