[総目次] [カテゴリ] [前]

TO - [制御]

[次] [次カテゴリ] [索 引]

TO

… 繰り返し処理

書  式

FOR 変数=式1 TO 式2 STEP 式3
 FOR I=0 TO 10 STEP 2

説  明

FORNEXTの間に記述した処理を、一定の回数繰り返します。回数は、1の値から、2の値になるまでです。

処理を繰り返すたびに、1の値にSTEPの値を加算します。変数にはその値が自動的に代入されます。
式1の値が式2の値を越えた時点でループが終了します。

STEP以降は省略が可能です(省略すると、STEP 1として扱われます)。


注意事項

FOR文は最低1回は処理が実行されます。

STEPにはプラスの値の整数値のみ使用してください。マイナスの値は使用できません。

GOTO文などでFORNEXTループを抜けると、内部処理(スタック処理)に異常が発生し、動作不具合の原因となります。
FORループの途中でループを抜ける場合は、カウンタ変数の値を終了値(TOの後に指定した値)に設定するなどの方法を利用してください(サンプル 2を参照)。

マルチステートメントでは使用できません。動作の不具合が発生します。

FORNEXT間には、何らかの処理を記述する必要があります。処理を記述しないと、不具合が発生する可能性があります。


関連項目

NEXTFORSTEP


サンプル

(サンプル 1)
REM 944BASIC 'FOR NEXT サンプル'
COLORBG 0,0,0:COLORFG 0,255,0
FONT 48:CLS
REM 入れ子(ネスト)も可能
FOR I=0 TO 31
 A=''
 FOR J=0 TO 59
  REM RNDにTIME(時刻)を足して、より不規則化する
  R=RND+TIME%10:R=STR(R)
  A=STRCAT(A,R)
 NEXT J
 PRINT A
NEXT I
KEYWAIT

(サンプル 2)
REM 944BASIC 'FOR NEXT サンプル2'
REM ランダムシード - RNDを不定回数繰り返して、より不規則化する
FOR I=(TIME%60)
  R=RND
NEXT I
R=RND+TIME%20
FOR I=1 TO 20
 PRINT 'FOR 〜 NEXT ';
 PRINT I;
 PRINT ' 回目'
 REM 変数 I を強制的に終了値にして、ループを抜ける
 IF I=R THEN PRINT 'STOP': I=20
NEXT I
KEYWAIT
END


[総目次] [カテゴリ] [前]

TO - [制御]

[次] [次カテゴリ] [索 引]