| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

COBOL ステートメント - PERFORM

提供: MyMemoWiki
2020年2月15日 (土) 08:34時点におけるPiroto (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

COBOL ステートメント - PERFORM

COBOL | プロシージャに明示的に制御を移し、プロシージャの実行終了後に、PERFORMステートメントの次のステートメントに制御を戻す。

繰り返し処理を記述するのに利用できる。

行外PERFORM

プロシージャ名が指定された場合

行内PERFORM

プロシージャ名が省略された場合。END-PERFORMにより、区切る必要がある

基本

PERFORM [ THRU} プロシージャ名2] プロシージャ名 [ {THROUGH ]
[命令文1 END-PERFORM]
  • THROUGHプロシージャ名2 まで指定されているときには、2つ以上の段落を実行する。

TIMES句付き

指定した回数だけ実行し、次の行へ戻ってくる

PERFORM [ THRU} プロシージャ名2] プロシージャ名 [{THROUGH ]
[整数1 } TIMES 命令文 END-PERFORM {一意名1 ]
PERFORM SUB1 4 TIMES

SUB1を4回繰り返し実行し、元に戻る

UNTIL句付き

UNTIL 句によって指定された条件が真になるまで実行し、次の行へ戻ってくる

PERFORM [ THRU} プロシージャ名2] プロシージャ名 [{THROUGH ]
[ AFTER} WITH TEST {BEFORE ]
UNTIL 条件1 
[命令文 END-PERFORM]
PERFORM SUB1 UNTIL N > 20

SUB1をNが20を超えるまで実行する

TESTオプション 内容
TEST BEFORE 条件判定を、命令文の前に実行
TEST AFTER 条件判定を、命令文の前後に実行

VARYING句付き

ある一定の規則に従って、1 つまたは複数のID や指標名の値を増やすか、または減らします

PERFORM [ THRU} プロシージャ名2] プロシージャ名 [{THROUGH ]
[ AFTER} WITH TEST {BEFORE ]
VARYING データ名
FROM 初期値 
BY 増分
UNTIL 条件
[命令文 END-PERFORM]
PERFORM VARYING J FROM 1 BY 1
        UNTIL   J > 100
  ADD J TO GOKEI
ENF-PERFORM.
 

テンプレート:Include html banner html, "!COBOL"