Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


ループのコーディング

PERFORM . . . TIMES ステートメントを使用すれば、段落を指定した回数だけ実行することができます。

PERFORM 010-PROCESS-ONE-MONTH 12 TIMES
INSPECT . . .

上記の例では、制御が PERFORM ステートメントに達すると、段落 010-PROCESS-ONE-MONTH のコードが 12 回実行されてから、制御が INSPECT ステートメントに移ります。

PERFORM . . . UNTIL ステートメントは、選択した条件が満たされるまで段落を実行する場合に使用します。以下のいずれかの形式を使用することができます。

PERFORM . . . WITH TEST AFTER  . . . . UNTIL . . .
PERFORM . . . [WITH TEST BEFORE] . . . UNTIL . . . 

PERFORM . . . WITH TEST AFTER . . . UNTIL ステートメントは、段落を少なくとも 1 回実行し、 その後テストしてからそれ以降を実行したい場合に使用します。 このステートメントは、do-until 構造と同等です。

この図は、TEST AFTER を指定した PERFORM の処理フローを示しています。 詳細へのリンク。

次の例では、暗黙の WITH TEST BEFORE 句によって do-while 構造が提供されます。

PERFORM  010-PROCESS-ONE-MONTH
  UNTIL MONTH GREATER THAN 12
INSPECT . . .

制御が PERFORM ステートメントに達すると、条件 MONTH GREATER THAN 12 がテストされます。条件が満たされると、制御が INSPECT ステートメントに移ります。条件が満たされない場合には、010-PROCESS-ONE-MONTH が実行され、条件が再度テストされます。このサイクルは、条件が真になるまで継続されます。(プログラムを読みやすくするために、WITH TEST BEFORE 節をコーディングすることが必要な場合もあります。)

この図は、直前の段落で説明している、TEST BEFORE を指定した PERFORM の処理フローを示しています。


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)