基本情報技術者過去問題 平成30年秋期 午後問13

問13 

次の表計算のワークシート及びマクロの説明を読んで,設問1〜3に答えよ。

〔表計算の説明〕
 Z社は,店舗の窓口で自社商品に関する諸手続のサービスを行っている。来店した顧客が受付機のボタンを押すと,1から始まる連番の受付番号を記した受付票が発行される。窓口では,受付番号の順に担当者がPCを用いて業務処理用サーバ(以下,業務サーバという)の機能を利用しながらサービスを行う。最近,顧客へのアンケートで"待ち時間が長い"との意見が増えたので,表計算ソフトを用いて待ち時間の状況などを分析することにした。
 なお,本問において,関数"条件付個数"は,セル範囲に含まれる空白セルでないセルのうち検索条件の記述で指定された条件を満たすセルの個数を返す。

〔ワークシート・来店状況〕
 業務サーバには,顧客に対して行ったサービスに関するデータが受付番号ごとに記録される。この記録から分析に必要なデータを得るために,ある1日のデータを業務サーバから抽出,加工して,ワークシート"来店状況"に入力した。ワークシート"来店状況"の例を,図1に示す。
  • 列A〜Fの行3以降に,業務サーバから抽出した,受付票の発行後にサービスを受けた顧客(以下,窓口利用者という)のデータが入力されている。
    データは,一つの受付番号に関するものが1レコードとして同一行に入力され,受付番号の昇順に整列されている。データの件数は5件以上250件以下であり,最後のデータが入力された行よりも下の行の各セルには空値が格納されている。
  • 業務サーバは,時間を分の単位の整数値で保持し,時刻を午前0時00分からの経過分数として保持する。時間及び時刻の計算にはこの整数値を用いる。時間及び時刻は,hh:mm(時:分)の形式で表示する。
  • 列Aの受付番号は受付票に記された番号であり,列Bの受付時刻はその受付票が発行された時刻である。受付機による受付票の発行は10時00分になると同時に開始し,19時00分になると同時に終了する。
  • 列Cのサービス種別は,窓口利用者に対して行ったサービスの種別であり,A,B,Cの三つがある。全てのサービスは,1日に1回以上利用される。
  • 列Dの窓口番号は,サービスを行った窓口の番号である。窓口は三つあり,それらの窓口番号は1,2,3である。どの窓口でも全ての種別のサービスを行っている。
  • 列Eの開始時刻は窓口でサービスを開始した時刻,列Fのサービス時間はサービスに掛かった時間である。
  • セル G3 に,開始時刻にサービス時間を加えて終了時刻を求める次の式を入力し,セル G4〜G252 に複写する。
      IF(A3=null,null,E3+F3)
  • セル H3 に,受付時刻から開始時刻までの時間(以下,待ち時間という)を求める次の式を入力し,セル H4〜H252 に複写する。
      IF(A3=null,null,E3−B3)
  • セル I3 に,当該行の受付番号よりも小さい受付番号をもつ窓口利用者のうち,当該行の受付時刻にまだサービスが開始されていない人数(以下,待ち人数という)を求める次の式を入力し,セル I4〜I252 に複写する。ここで,待ち時間が0の窓口利用者は,待ち人数に含めない。
      IF(A3=null,null,a)
  • セル J3に,列Hの待ち時間の値を大きい順に順位付けしたときの当該行の順位(以下,待ち時間順位という)を求める次の式を入力し,セル J4〜J252 に複写する。ここで,待ち時間の等しいデータが複数あるときは,受付番号の小さいデータを上位とする。
      IF(A3=null,null,条件付個数(H$3:H$252,>H3)
        +条件付個数(H$3:H3,=H3))

設問1

設問1は問題誤りにつき,全員正解の措置済みです。
ワークシート"来店状況"に関する記述中の に入れる正しい答えを,解答群の中から選べ。
a に関する解答群
  • 条件付個数(E3:E$252,>B3)
  • 条件付個数(E$3:E3,<B3)
  • 条件付個数(E$3:E3,>B3)
  • 条件付個数(G3:G$252,>B3)
  • 条件付個数(G3:G$252,<B3)
  • 条件付個数(G$3:G3,>B3)

解答選択欄

  • a:

解答

  • a=

解説

この設問の解説はまだありません。
〔ワークシート:分析〕
 ワークシート"来店状況"のデータを基に窓口利用者の状況を分析するために,ワークシート"分析"を作成し,セル A2〜D12 に"時間帯別分析",セル F2〜I6 に "種別分析",セル F9〜I14 に"待ち時間分析(上位5件)"の表を格納した。ワークシート"分析"の例を,図2に示す。
pm13_2.gif/image-size:551×359

設問2

ワークシート"分析"に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。
  • 集計の区分を1時間ごとの時間帯とし,セル A4〜B12 に,各時間帯の始まりの時刻(毎時の00分)と終わりの時刻(毎時の59分)を上から順に入力する。また,セル F4〜F6 にサービスの種別を,セル F10〜F14 に待ち時間の順位を示す数値1〜5を入力する。
  • セル C4 に,ワークシート"来店状況"のデータから,受付時刻が当該行の時間帯にあるデータの個数を求める次の式を入力し,セル C5〜C12 に複写する。
      b
  • セル D4 に,ワークシート"来店状況"のデータから,受付時刻が当該行の時間帯にあるデータの待ち時間の平均値を求める式を入力し,セル D5〜D12 に複写する。ここで,当該行の時間帯の受付人数が0のときの待ち時間の平均値は0とする。
  • セル G4 に,ワークシート"来店状況"のデータから,サービス種別が当該行のサービス種別と一致するデータの件数を求める式を入力し,セル G5〜G6 に複写する。また,セル H4 に全サービス件数に対する当該行の件数の構成比率を求める式を入力し,セル H5〜H6 に複写する。
  • セル I4 に,ワークシート"来店状況"のデータから,サービス種別が当該行のサービス種別と一致するデータのサービス時間の平均値を求める次の式を入力し,セル I5〜I6 に複写する。
      切捨て(c,0)
  • セル G10 に,ワークシート"来店状況"のデータから,待ち時間順位がセル F10 の順位に該当するデータの受付番号を求める次の式を入力し,セル G11〜G14 に複写する。
      b
  • セル H10 に,ワークシート"来店状況"のデータから,セル G10 の受付番号に該当するデータの受付時刻を求める式を入力し,セル H11〜H14 に複写する。
  • セル I10に,ワークシート"来店状況"のデータから,セル G10 の受付番号に該当するデータの待ち時間を求める式を入力し,セル I11〜I14 に複写する。
b に関する解答群
  • 条件付個数(来店状況!B$3:B$252,>A4)
      −条件付個数(来店状況!B$3:B$252,>A5)
  • 条件付個数(来店状況!B$3:B$252,>A4)
      −条件付個数(来店状況!B$3:B$252,>B4)
  • 条件付個数(来店状況!B$3:B$252,>B4)
      −条件付個数(来店状況!B$3:B$252,>A4)
  • 条件付個数(来店状況lB$3:B$252,<A4)
      −条件付個数(来店状況!B$3:B$252,≦B4)
  • 条件付個数(来店状況!B$3:B$252,≦B4)
      −条件付個数(来店状況!B$3:B$252,<A4)
c に関する解答群
  • 合計(来店状況!F$3:F$252)/G4*H4
  • 条件付合計(来店状況!C$3:C$252,=F4,来店状況!F$3:F$252)/G4
  • 条件付合計(来店状況!C$3:C$252,=F4,来店状況!F$3:F$252)/合計(G$4:G$6)
  • 条件付合計(来店状況!F$3:F$252,=F4,来店状況!C$3:C$252)/G4
  • 条件付合計(来店状況!F$3:F$252,=F4,来店状況!C$3:C$252)/合計(G$4:G$6)
  • 平均(来店状況!F$3:F$252)*H4
d に関する解答群
  • 照合検索(F10,来店状況!A$3:A$252,来店状況!J$3J$252)
  • 照合検索(F10,来店状況!J$3:J$252,来店状況!A$3:A$252)
  • 垂直照合(順位(F10,来店状況!H$3:H$252,1),来店状況!A$3J$252,1,0)
  • 垂直照合(F10,来店状況!A$3:J$252,10,0)
  • 表引き(来店状況!A$3:A$252,順位(F10,来店状況!H$3:H$252,1),1)
  • 表引き(来店状況J$3J$252,照合一致(F10,来店状況!A$3:A$252,0),1)

解答選択欄

  • b:
  • c:
  • d:

解答

  • b=
  • c=
  • d=

解説

この設問の解説はまだありません。
〔マクロ:queue_simulation の説明〕
 待ち時間の短縮策を検討するために,窓口数を変えたときのサービスを行う窓口の窓口番号,開始時刻,終了時刻,待ち時間及び待ち人数の変化をシミュレーションするマクロ queue_simulation を作成し,ワークシート"来店状況"に格納した。シミュレーションに使う窓口数をワークシート"来店状況"のセル B1 に入力し,受付番号,受付時刻,サービス種別及びサービス時間は,ワークシート"来店状況"のセル A3〜F252 の内容をそのまま用いる。窓口数として,1〜8を指定できる。
  • 各窓口でサービスを受けている窓口利用者へのサービスが終了する時刻(以下,前者終了時刻という)を格納する配列 end_time を用意する。配列 end_time の添字の値1〜8は窓口番号の1〜8と対応する。各要素の初期値として0を格納する。
  • 処理する行(以下,処理行という)の位置を格納する変数 work_line を用意し,初期値を1とする。
  • ワークシート"来店状況"の行3のデータから処理を始め,全てのデータの処理が終わるまで,①〜④の処理を繰り返す。
    1. サービスを受ける窓口を決定するために,配列 end_time に格納されている前者終了時刻の中で,最小の値をもつ要素を探し,その添字の値を窓口番号として処理行の列Dのセルに格納する。ここで,前者終了時刻が等しい窓口が複数あるときは,窓口番号が最小の窓口を選択する。
    2. ①で求めた前者終了時刻の最小の値が処理行の列Bの受付時刻よりも小さいときは受付時刻を,そうでなければ①で求めた前者終了時刻の最小の値を,開始時刻として処理行の列Eのセルに格納する。
    3. ①で決定した窓口の前者終了時刻を更新するために,配列 end_time の当該窓口に対応する要素に,処理行の列Gの終了時刻を格納する。
    4. 変数 work_lineに1を加える。

設問3

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

pm13_3.gif/image-size:416×538
e に関する解答群
  • min_time < end_time[i]
  • min_time < end_time[min_no]
  • min_time < 相対(A2,work_line,1)
  • min_time > end_time[i]
  • min_time > end_time[min_no]
  • min_time > 相対(A2,work_line,1)
f に関する解答群
  • end_time[i]
  • end_time[min_no]
  • i
  • min_no
  • min_time
  • work_line
g に関する解答群
  • end_time[min_no] ← min_time
  • end_time[min_no] ← 相対(A2,work_line,4)
  • end_time[min_no] ← 相対(A2,work_line,6)
  • end_time[work_line] ← min_time
  • end_time[work_line] ← 相対(A2,work_line,4)
  • end_time[work_line] ← 相対(A2,work_line,6)

解答選択欄

  • e:
  • f:
  • g:

解答

  • e=
  • f=
  • g=

解説

この設問の解説はまだありません。
【30年秋期 午後問題】
 問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11 問12 問13
© 2010-2019 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop