平成28年春期試験午後問題 問10

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】

問10 ソフトウェア開発(COBOL)

次のCOBOLプログラムの説明及びプログラムを読んで,設問1,2に答えよ。

〔プログラムの説明〕
 Z社では,従業員向けの福利厚生施設として,6部屋の客室を有する保養所を運営している。1部屋には4人まで宿泊可能で,宿泊希望者は1~6までの部屋数を指定できる。宿泊日数は1泊だけである。このプログラムは宿泊予約を管理するサブプログラムであり,予約情報を受け取り,予約結果を呼出し元へ返す。
  • このプログラムのパラメータは二つで,各パラメータの様式は,図1のとおりである。
    pm10_1.png
    1. 予約番号には,予約希望に対して一意に割り振られた 000001~999999 の番号が格納されている。
    2. 希望日には,宿泊する日の年,月,日が,それぞれ西暦の4桁,2桁,2桁で格納されている。
    3. 部屋数には,希望する部屋数が格納されている。
    4. 結果には,希望どおりに予約できた場合は 0 を,できなかった場合は 9 を設定する。
    5. 空き部屋数には,希望どおりに予約できなかった場合に,希望日の空き部屋数を設定する。例えば,3部屋を希望している場合に2部屋しか空きがなかったときは,2 を設定する。希望どおりに予約できた場合は,0 を設定する。
    6. 予約情報に誤りはないものとする。
  • 予約ファイルは,日付を主キーとする図2に示すレコード様式の索引ファイルであり,予約状況を管理する。
    pm10_2.png
    1. 日付には,年,月,日が,それぞれ西暦の4桁,2桁,2桁で格納されている。
    2. 部屋1~6のうち,予約済みの部屋には予約番号が格納される。予約が入っていない部屋には 0 が格納されている。
    3. 予約が1部屋も入っていない日のレコードは存在しない。
pm10_3.png

設問1

プログラム中の に入れる正しい答えを,解答群の中から選べ。
a に関する解答群
  • ADD 1 TO GET-ROOM
  • ADD 1 TO PRM-FREE
  • MOVE PRM-NO TO RSV-NO(CNT)
  • MOVE ZERO TO RSV-NO(CNT)
b,c に関する解答群
  • CNT > 6
  • CNT > GET-ROOM
  • CNT > PRM-ROOM
  • GET-ROOM < PRM-ROOM
  • GET-ROOM = PRM-ROOM
  • GET-ROOM > PRM-ROOM
解答選択欄
  • a:
  • b:
  • c:
  • a=
  • b=
  • c=

解説

この設問の解説はまだありません。

設問2

予約をキャンセルする場合は,宿泊する日の7日前からキャンセル料が発生する。希望どおり予約できた場合には,キャンセル料の発生開始日もパラメータで返すように,プログラムを変更する。キャンセル料の発生開始日の年,月,日は,それぞれ西暦の4桁,2桁,2桁で表し,予約できなかった場合には 0 を設定する。キャンセル料の発生開始日を求める処理は 2016年~2099 年で動作を保証する。表中の に入れる正しい答えを,解答群の中から選べ。
pm10_4.png
d に関する解答群
  • 行番号25と26の間
  • 行番号35と36の間
  • 行番号37と38の間
  • 行番号46と47の間
e に関する解答群
  • COMPUTE CAN-DD = 30 + CAN-DD - 7
  • 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 > 100
  • QUOTIENT > 400
  • URU-SUPPLY = ZERO
  • URU-SUPPLY NOT = ZERO
解答選択欄
  • d:
  • e:
  • f:
  • d=
  • e=
  • f=

解説

この設問の解説はまだありません。

Pagetop