基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [令和元年秋午前] [令和元年秋午後]

平成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  ワークシート“会議室選定”に関する次の 記述中の   に入れる正しい答えを,解答群の中から選べ。

 

(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

ク 論理積(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

キ 最大(E2:E16) > 0       ク 最大(E2:E16) < 1

 

c に関する解答群 ア 照合一致(最小(E2:E16), E2:E16, 0)

イ 照合一致(最大(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)

 

解答 a ←クリックすると正解が表示されます

解答 b ←クリックすると正解が表示されます

解答 c ←クリックすると正解が表示されます

基本情報技術者試験


設問2  マクロ SelectRoom 中の   に 入れる正しい答えを,解答群の中から選べ。

 

〔マクロ:SelectRoom〕

 

d に関する解答群 ア 論理積(表引き(予約リスト!C2:C1ØØØØ, J, 1) ≧ C19,
        表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ B19)

イ 論理積(表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ C19,
        表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ B19)

ウ 論理積(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ C19,
        表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ B19)

エ 論理積(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ C19,
        表引き(予約リスト!C2:C1ØØØØ, J, 1) ≧ B19)

オ 論理和(表引き(予約リスト!C2:C1ØØØØ, J,1) ≧ C19,
        表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ B19)

カ 論理和(表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ C19,
        表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ B19)

キ 論理和(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≧ C19,
        表引き(予約リスト!C2:C1ØØØØ, J, 1) ≦ B19)

ク 論理和(表引き(予約リスト!D2:D1ØØØØ, J, 1) ≦ C19,
        表引き(予約リスト!C2:C1ØØØØ, J, 1) ≧ B19)

 

e に関する解答群 ア 相対(D2, J − 1, Ø)

イ 相対(D2, J, Ø)

ウ 相対(D2, 照合一致(表引き(予約リスト!G2:G1ØØØØ, J, 1),
    A2:A16, Ø) − 1, Ø)

エ 相対(D2, 照合一致(表引き(予約リスト!G2:G1ØØØØ, J, 1),
    予約リスト!G2:G1ØØØØ, Ø) − 1, Ø)

オ 相対(D2, 照合一致(予約リスト!G2, A2:A16, Ø) − 1, Ø)

カ 相対(D2, 照合一致(予約リスト!G2, A2:A16, 1) − 1, Ø)

 

f に関する解答群 ア 表引き(予約リスト!B2:B1ØØØØ, J, 1) = A19

イ 表引き(予約リスト!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

解答 d ←クリックすると正解が表示されます

解答 e ←クリックすると正解が表示されます

解答 f ←クリックすると正解が表示されます


[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]