スライド 1

終了フラグ
(P.5とp.22の例)宅配便の料金プロ
グラムに終了フラグを追加した説明
e-flg(終了フラグ)に予め値0(ゼロ)を記憶さ
せます。終了フラグはOFFの状態です。
OFF
繰り返し処理の開始。終了条件はe-flgの内
容が9999に等しい時、成立します。
OFF
1件目のデータを読みます。データは終わりでは
ないので、NOT AT END へ処理が進みます。
OFF
データは580で、1000以下なのでYES。下向きに処
理が流れます。
OFF
データは1000以下なので料金の記憶場所に値、
700が記憶されます。
OFF
料金の記憶場所の値、700が印字されます。
OFF
ループ終端に来たので、繰り返し処理の始まりに
戻ります。
OFF
e-flgの記憶内容は0なので、終了条件には当ては
まりません。フラグはOFFのままです。
OFF
2件目のデータ、値1460を読み、重量の記憶場所
に記憶します。データは終わりではないので下へ。
OFF
重量の値1460は1000以下ではないので、NOの方
向へ処理が流れます。
OFF
重量の値1460は2000以下なので、YESの方向へ
処理が流れます。
OFF
料金に値800を記憶させます。
OFF
料金の値800を印字する処理を実行します。
OFF
ループ終端に来たので、繰り返し処理の始まりに
戻ります。
OFF
e-flgの記憶内容は0なので、終了条件には当ては
まりません。フラグはOFFのままです。
OFF
3件目のデータ、値2730を読みます。データは終
わってはいないので、下へ処理を続けます。
OFF
値2730は1000以下ではないので、NOの方向へ処
理が流れます。
OFF
値2730は2000以下ではないので、NOの方向へ処
理が流れます。
OFF
料金の記憶場所に、値1000を記憶させます。
OFF
料金の値1000を印字する処理を実行します。
OFF
ループ終端に来たので、繰り返し処理の始まりに
戻ります。
OFF
e-flgの値は0なので、終了条件に当てはまりませ
ん。繰り返し処理を続けます。フラグはOFFです。
OFF
ファイルを読み終わりました。AT ENDの向きに処
理が流れます。
OFF
e-flg(終了フラグ)に値9999を記憶させます。
OFF
その瞬間、繰り返し処理の終了条件に合致しまし
た!終了フラグはONに変わります。
ON
処理はループ終端の下の処理へと流れます。
ON
処理は「おわり」になり、プログラムが停止します。
ON
01 E-FLG PICTURE X(3).
終了フラグの属性を文字にすることもできます。
例えば文字3ケタにしたのが↑の書き方です。
あらかじめ終了フラグにOFFを記憶しておきます。
終了フラグがONになるまで、繰り返し処理を行
います。
ファイルを読み終えたら、AT END で終了フラ
グにONを記憶させます。
終了条件に当てはまった瞬間、プログラムは停止します。