平成30年 春期 基本情報技術者 午後 問13
問13 表計算次の表計算のワークシート及びマクロの説明を読んで,設問1,2に答えよ。 〔表計算の説明〕 Z 社は現在,表計算ソフトを用いた会議室の予約システムを作成中である。 会議室は 15 室あり,それぞれ一意の会議室番号が振られている。 また,収容可能人数(以下,定員という)は同一ではなく,スクリーンがある会議室と ない会議室がある。会議室の利用は,9 時から 21 時まで可能である。 予約システムは,ワークシート“会議室選定”とワークシート“予約リスト”で構成される。 〔ワークシート:会議室選定〕 はじめに,ワークシート“会議室選定”を作成した。 ワークシート“会議室選定”の例を,図1に示す。
図1 ワークシート“会議室選定”の例 (1) セル A2 〜 A16 には,会議室番号が入力されている。セル B2 〜 B16 には, 会議室の定員が入力されている。セル C2 〜 C16 には,スクリーンがある会議室で あれば“有”が,そうでなければ“無”が入力されている。 (2) 予約したい会議室の条件を,セル A19 〜 E19 に入力する。セル A19 に会議室の 利用日を,セル B19 に開始時刻を,セル C19 に終了時刻を入力する。セル D19 には, 利用人数を入力する。セル E19 には,スクリーンの利用を希望する場合は“要”を, そうでない場合は“不要”を入力する。終了時刻は開始時刻よりも後でなければならない。 日付は YYYYMMDD,時刻は hhmm の形式で表現される整数値である。 (3) (2) で条件を入力した後,ワークシート“会議室選定”に 格納されているマクロ SelectRoom を実行すると, ワークシート“予約リスト”に格納されている予約の一覧を参照し, 会議室ごとに,条件に指定した利用日の開始時刻から終了時刻までの間 (開始時刻及び終了時刻を含まない)に他の予約が入っていない場合は “可”を,そうでなければ“否”を,セル D2 〜 D16 に格納する。 (4) セル E2 〜 E16 には,対応する会議室の収容率を求める式が入力されている。 ここで収容率は,次の式で求める。
ただし,利用人数が定員を超える場合,スクリーンの利用を希望しているのに 会議室にスクリーンがない場合,又は当該行の列 D の値が“否”の場合は, 収容率は 0 にする。 (5) セル A22 には,推奨会議室の会議室番号を表示する式が入力されている。 ここで,推奨会議室とは,収容率が最も大きな正の値となる会議室である。 ただし,この収容率が等しい会議室が複数あるとき,それらの中で表の最も上に 位置する会議室番号を表示する。また,条件を満たす会議室がないときには, “なし”を表示する。 〔ワークシート:予約リスト〕 予約の一覧は,ワークシート“予約リスト”に格納されている。 ワークシート“予約リスト”の例を,図2に示す。
図2 ワークシート“予約リスト”の例 (1) 1件の予約のデータが1行に入力されている。列 A には, 予約ごとに一意となる予約 ID が格納されている。 (2) 列 B には利用日,列 C には開始時刻,列 D には終了時刻, 列 E には利用人数が格納されている。日付は YYYYMMDD,時刻は hhmm の形式で 表現される整数値である。 (3) 列 F には,スクリーンの利用を希望する場合は“要”が,そうでない場合は “不要”が格納されている。 (4) 列 G には,予約された会議室番号が格納されている。 (5) 予約のデータは,利用日の昇順に常に整列されている。 (6)新しい予約のデータを登録するには,ワークシート“予約リスト”に 格納されているマクロ Register を実行する。また,予約総数は 9,998 件までとし, データの最終行よりも下の行の列 A 〜 G の各セルには空値が格納されている。 (7) 会議室の予約は 9 時から 21 時まで行うことができる。21 時を過ぎたら直ちに, ワークシート“予約リスト”に格納されているマクロ Update を実行する。 マクロ Update は,利用が終了した予約のデータを予約の一覧から消去するために, その予約のデータの入った行より下の行の予約のデータを上方向に詰める。 (8) マクロ Register,Update,SelectRoom は,いずれもその実行中に他のマクロが 実行されることはない。
(1) 次の式をセル E2 に入力し,セル E3 〜 E16 に複写する。 IF(論理和( a ), 0, D$19/B2) (2) 次の式を,セル A22 に入力する。 IF( b, 'なし', c ) a に関する解答群 イ 論理積(E$19='要', C2='無'), D2='否 ', D$19 > B2 ウ 論理積(E$19='要', C2='有', D2='否 '), D$19 > B2 エ 論理積(E$19='要', C2='無', D2='否 '), D$19 > B2 オ 論理積(E$19='不要', C2='有'), D2='否 ', D$19 > B2 カ 論理積(E$19='不要', C2='無'), D2='否 ', D$19 > B2 キ 論理積(E$19='不要', C2='有', D2='否 '), D$19 > B2 ク 論理積(E$19='不要', C2='無', D2='否 '), D$19 > B2 b に関する解答群 ウ 最小(E2:E16) > 0 エ 最小(E2:E16) < 1 オ 最大(E2:E16) = 0 カ 最大(E2:E16) = 1 キ 最大(E2:E16) > 0 ク 最大(E2:E16) < 1 c に関する解答群 イ 照合一致(最大(E2:E16), E2:E16, 0) ウ 照合検索(最小(E2:E16), E2:E16, A2:A16) エ 照合検索(最大(E2:E16), E2:E16, A2:A16) オ 表引き(A2:A16, 順位(最小(E2:E16), E2:E16, 0), 1) カ 表引き(A2:A16, 順位(最大(E2:E16), E2:E16, 0), 1)
〔マクロ:SelectRoom〕
d に関する解答群 表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ B19)
イ 論理積(表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ C19,
ウ 論理積(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ C19,
エ 論理積(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ C19,
オ 論理和(表引き(予約リスト!C2:C1ØØØØ, J,1) ≧ C19,
カ 論理和(表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ C19,
キ 論理和(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ C19,
ク 論理和(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ C19, e に関する解答群 イ 相対(D2, J, Ø)
ウ 相対(D2, 照合一致(表引き(予約リスト!G2:G1ØØØØ, J, 1),
エ 相対(D2, 照合一致(表引き(予約リスト!G2:G1ØØØØ, J, 1), オ 相対(D2, 照合一致(予約リスト!G2, A2:A16, Ø) − 1, Ø) カ 相対(D2, 照合一致(予約リスト!G2, A2:A16, 1) − 1, Ø) f に関する解答群 イ 表引き(予約リスト!B2:B1ØØØØ, J, 1) = null ウ 表引き(予約リスト!B2:B1ØØØØ, J, 1) ≠ A19 エ 表引き(予約リスト!B2:B1ØØØØ, J, 1) ≠ null オ 表引き(予約リスト!C2:C1ØØØØ, J, 1) < B19 カ 表引き(予約リスト!D2:D1ØØØØ, J, 1) > C19
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
| ||||