前頁  メニュー  次頁


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文を用いる。