FOR operand1 |
[:]= |
|||||||||
|
||||||||||
STEP |
||||||||||
statement | ||||||||||
END-FOR |
(structured mode only) | |||||||||
LOOP |
(reporting mode only) |
このドキュメントでは、次のトピックについて説明します。
構文図で使用されている記号については、「構文記号」を参照してください。
関連機能グループ:ループ実行
FOR
ステートメントは、処理ループを開始し、ループの処理回数を制御するために使用します。
FOR
ループに入る前に、オペランドの値に矛盾がないか(operand2
に operand4
を繰り返し加算し、operand3
の値以上になるか)を確かめます。値に矛盾があれば、FOR
ループには入りません(STEP
値がゼロの場合を除き、エラーメッセージは出力されません)。
オペランド定義テーブル:
オペランド | 構文要素 | フォーマット | オペランド参照 | ダイナミック定義 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 |
S | N | P | I | F | ○ | ○ | |||||||||||||
operand2 |
C | S | N | N | P | I | F | ○ | × | |||||||||||
arithmetic-expression |
S | N | P | I | F | × | × | |||||||||||||
operand3 |
C | S | N | N | P | I | F | ○ | × | |||||||||||
operand4 |
C | S | N | N | P | I | F | ○ | × |
構文要素の説明:
構文要素 | 説明 |
---|---|
operand1 |
ループ制御変数(
operand1 )および初期設定(operand2 ):
キーワード 処理ループ実行中にループ制御変数を参照できます。ループ制御変数には、その現在値が含まれます。 注意: |
operand2 |
|
operand3 |
TO 値:
処理ループは、 注意: |
STEP operand4 |
STEP 値:
ループに入るときに 注意:
|
(arithmetic-expression) |
算術演算式:
注意:
算術式の詳細については、 |
END-FOR |
End of FOR ステートメント:
ストラクチャードモードでは、 レポーティングモードでは、Natural のステートメント |
LOOP |
** Example 'FOREX1S': FOR (structured mode) ************************************************************************ DEFINE DATA LOCAL 1 #INDEX (I1) 1 #ROOT (N2.7) END-DEFINE * FOR #INDEX 1 TO 5 COMPUTE #ROOT = SQRT (#INDEX) WRITE NOTITLE '=' #INDEX 3X '=' #ROOT END-FOR * SKIP 1 FOR #INDEX 1 TO 5 STEP 2 COMPUTE #ROOT = SQRT (#INDEX) WRITE '=' #INDEX 3X '=' #ROOT END-FOR * END
#INDEX: 1 #ROOT: 1.0000000 #INDEX: 2 #ROOT: 1.4142135 #INDEX: 3 #ROOT: 1.7320508 #INDEX: 4 #ROOT: 2.0000000 #INDEX: 5 #ROOT: 2.2360679 #INDEX: 1 #ROOT: 1.0000000 #INDEX: 3 #ROOT: 1.7320508 #INDEX: 5 #ROOT: 2.2360679
レポーティングモードの例については、次のプログラムを参照してください:FOREX1R