実習2

実習2 最大値・最小値
フローチャートの作成
1
1 入力ファイル・出力ファイルを開く。
は じ め
入力ファイルと
出力ファイルを開く
2
2 初期値を設定する。
は じ め
入力ファイルと
出力ファイルを開く
0 → MAX
999 → MIN
“OFF”→ E-FLG
3
3 見出行を印字する。
は じ め
入力ファイルと
出力ファイルを開く
0 → MAX
999 → MIN
“OFF”→ E-FLG
見出行→
出力レコード
印字
A
4
4 入力データが終了するまで繰り返す。
A
ループ1
E-FLG = “ON”まで
繰り返す処理をループ始
端とループ終端ではさむ
処
理
ループ1
5
5 入力データを読む。
A
ループ1
E-FLG = “ON”まで
入力データを
読む
AT END
データが終わりでない場合は、
次の処理へ進む。終わりの
場合は、繰り返しを終える条
件を設定する。
NOT AT END
“ON” → E-FLG
ループ1
6
6 執行率を求める。
A
ループ1
E-FLG = “ON”まで
入力データを
読む
AT END
NOT AT END
SYUTU * 100 / YOSAN
→ RITU
“ON” → E-FLG
B
C
7
7 執行率と最大値を比較する。
A
ループ1
E-FLG = “ON”まで
入力データを
読む
AT END
NOT AT END
「執行率 >= 最大値」 となっている
か判断する。
YESの場合、執行率を最大値として保
存し、クラブコード(CCODE)を最大値
のクラブコード(MAXCCODE)に保存
する。
NOの場合、何もしない。
SYUTU * 100 / YOSAN
→ RITU
RITU >= MAX
NO
“ON” → E-FLG
YES
RITU → MAX
CCODE → MAXCCODE
B
C
8
8 執行率と最小値を比較する。
C
B
RITU <= MIN
YES
RITU → MIN
CCODE → MINCCODE
D
NO
「執行率 <= 最小値」 となっている
か判断する。
YESの場合、執行率を最大値として保
存し、クラブコード(CCODE)を最大値
のクラブコード(MINCCODE)に保存
する。
NOの場合、何もしない。
9
9 各項目を明細行に転記する。
C
B
RITU <= MIN
NO
YES
RITU → MIN
CCODE → MINCCODE
CCODE → M-CCODE
YOSAN → M-YOSAN
SYUTU → M-SYUTU
RITU → M-RITU
D
10
10 明細行を印字する。
C
B
RITU <= MIN
NO
YES
RITU → MIN
CCODE → MINCCODE
CCODE → M-CCODE
YOSAN → M-YOSAN
SYUTU → M-SYUTU
RITU → M-RITU
明細行→
出力レコード
印字
D
11
11 最大値と最大値のクラブコードを最大値行に転記する。
D
ループ1
MAXCCODE→M-MAXCCODE
MAX → M-MAX
お わ り
12
12 最大値行を印字する。
D
ループ1
MAXCCODE→M-MAXCCODE
MAX → M-MAX
最大値行→
出力レコード印字
お わ り
13
13 最小値と最小値のクラブコードを最小値行に転記する。
D
ループ1
MAXCCODE→M-MAXCCODE
MAX → M-MAX
最大値行→
出力レコード印字
MINCCODE→M-MINCCODE
MIN → M-MIN
お わ り
14
14 最小値行を印字する。
D
ループ1
MAXCCODE→M-MAXCCODE
MAX → M-MAX
最大値行→
出力レコード印字
MINCCODE→M-MINCCODE
MIN → M-MIN
最小値行→
出力レコード印字
お わ り
15
14 入力ファイル・出力ファイルを閉じる。
D
ループ1
MAXCCODE→M-MAXCCODE
MAX → M-MAX
最大値行→
出力レコード印字
MINCCODE→M-MINCCODE
MIN → M-MIN
最小値行→
出力レコード印字
入力ファイルと出力
ファイルを閉じる
お わ り
16