平成28年 春期 基本情報技術者 午後 問10
問10 COBOL次の COBOL プログラムの説明及びプログラムを読んで,設問1,2に答えよ。 〔プログラムの説明〕 Z社では,従業員向けの福利厚生施設として,6部屋の客室を有する保養所を運営している。 1部屋には4人まで宿泊可能で,宿泊希望者は1〜6までの部屋数を指定できる。 宿泊日数は1泊だけである。このプログラムは宿泊予約を管理するサブプログラムであり, 予約情報を受け取り,予約結果を呼出し元へ返す。 (1) このプログラムのパラメタは二つで,各パラメタの様式は,図1のとおりである。
![]() 図1 パラメタの様式
A 希望日には,宿泊する日の年,月,日が,それぞれ西暦の4桁,2桁,2桁で格納されている。 B 部屋数には,希望する部屋数が格納されている。 C 結果には,希望どおりに予約できた場合は 0 を,できなかった場合は 9 を設定する。 D 空き部屋数には,希望どおりに予約できなかった場合に,希望日の空き部屋数を設定する。 例えば,3部屋を希望している場合に2部屋しか空きがなかったときは,2を設定する。 希望どおりに予約できた場合は,0 を設定する。 E 予約情報に誤りはないものとする。 (2) 予約ファイルは, 日付を主キーとする図2に示すレコード様式の索引ファイルであり,予約状況を管理する。
![]() 図2 予約ファイルのレコード様式
A 部屋1〜6のうち,予約済みの部屋には予約番号が格納される。 予約が入っていない部屋には 0 が格納されている。 B 予約が1部屋も入っていない日のレコードは存在しない。
〔プログラム〕 1 DATA DIVISION. 2 FILE SECTION. 3 FD RSV-FILE. 4 Ø1 RSV-REC. 5 Ø2 RSV-DATE PIC X(8). 6 Ø2 RSV-ROOM OCCURS 6. 7 Ø3 RSV-NO PIC 9(6). 8 WORKING-STORAGE SECTION. 9 77 CNT PIC 9(1). 1Ø 77 GET-ROOM PIC 9(1). 1l LINKAGE SECTION. 12 Ø1 PRM1. 13 Ø2 PRM-NO PIC 9(6). 14 Ø2 PRM-DATE PIC 9(3). 15 Ø2 PRM-ROOM PIC 9(1). 16 Ø1 PRM2. 17 Ø2 PRM-RSLT PIC 9(1). 18 Ø2 PRM-FREE PIC 9(1). 19 PROCEDURE DIVISION USING PRM1 PRM2. 2Ø MAIN-PROC. 21 OPEN I-O RSV-FILE. 22 MOVE PRM-DATE TO RSV-DATE. 23 READ RSV-FILE INVALID KEY PERFORM RSV-PROC 24 NOT INVALID KEY PERFORM CHK-PROC 25 END-READ. 26 CLOSE RSV-FILE. 27 EXIT PROGRAM. 28 RSV-PROC. 29 INITIALIZE RSV-REC. 3Ø MOVE PRM-DATE TO RSV-DATE. 31 PERFORM VARYING CNT FROM 1 BY 1 UNTIL CNT > PRM-ROOM 32設問1 プログラム中の に入れる正しい答えを,解答群の中から選べ。
a に関する解答群 イ ADD 1 TO PRM-FREE ウ MOVE PRM-NO TO RSV-NO(CNT) エ MOVE ZERO TO RSV-NO(CNT) b,c に関する解答群 ウ CNT > PRM-ROOM エ GET-ROOM < PRM-ROOM オ GET-ROOM = PRM-ROOM カ GET-ROOM > PRM-ROOM
d に関する解答群 ウ 行番号 37 と 38 の間 エ 行番号 46 と 47 の間 e に関する解答群 イ COMPUTE CAN-DD = MONTH-ELM(CAN-MM - 1) - 7 ウ COMPUTE CAN-DD = MONTH-ELM(CAN-MM) + CAN-DD - 7 エ SUBTRACT 7 FROM CAN-DD f に関する解答群 イ QUOTIENT > 4ØØ ウ URU-SUPPLY = ZERO エ URU-SUPPLY NOT = ZERO
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2025 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
| ||||||||||||
