FE22春後問13

FE22春後問13

基本情報技術者試験平成22年度春午後問13


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


〔表計算の説明〕

 ある喫茶店では,これまで手書き伝票と電卓を使って料金計算を行ってきたが,飲料の品目サイズ別メニュー化及び料理オプションの追加に伴い,表計算ソフトを利用することにした。


〔ワークシート:ニュー〕

(1) この喫茶店の飲料,料理を記載した表計算ソフトのワークシート”メニュー”を 作成した。そのワークシートを図 1 に示す。


f:id:tamagopanda:20100901202710p:image


(2) ワークシート”メニュー”中の各項目の説明は,次のとおりである。

飲料品目 :
“ブレンド”などの 4 品目である。
サイズ  :
“S”,“M”,“L”の 3 種類で,品目ごとサイズごとの価格である。
ワークシートには,負の値を設定する。
料理品目 :
“サンドイッチ”などの4品目である。
オプション:
“単品”,“ランチ”,“大盛”の 3 種類である。“単品”は,料理だけを注文した場合の価格である。“ランチ”は,単品にスープ又はサラダが付く注文をした場合の価格である。“大盛”は,大盛を注文した場合の価格であり,“カレー”と“ナポリタン”のランチに限る。

〔ワークシート:伝票〕

(1) 注文された飲料及び料理の数量の入力によって,料金計算を行うためのワークシ-ト“伝票”を作成した。そのワークシートの例を,図 2 に示す。


A B C D E F
1 種類 品目 タイプ 単価 数量 料金
2 飲料 ブレンド S 300 4 1,200
3 飲料 ブレンド M 350 0 0
4 飲料 ブレンド L 400 0 0
5 飲料 ブレンド セット割引 -150 4 -600
6 飲料 カプチーノ S 350 0 0
7 飲料 カプチーノ M 400 5 2,000
8 飲料 カプチーノ L 450 0 0
9 飲料 カプチーノ セット割引 -200 4 -800
10 飲料 カフェモカ S 400 0 0
11 飲料 カフェモ力 M 450 3 1,350
12 飲料 カフェモカ L 500 0 0
13 飲料 カフェモカ セッ卜割引 -250 1 -250
14 飲料 抹茶ラテ S 450 0 0
15 飲料 抹茶ラテ M 500 0 0
16 飲料 抹茶ラテ L 550 3 1,650
17 飲料 抹茶ラテ セット割引 -300 1 -300
18 料理 サンドイッチ 単品 550 0 0
19 料理 サンドイッチ ランチ 650 3 1,950
20 料理 ハンバーガー 単品 400 0 0
21 料理 ハンバーガー ランチ 550 3 1,650
22 料理 カレー 単品 650 0 0
23 料理 カレー ランチ 850 2 1,700
24 料理 カレー 大盛 950 1 950
25 料理 ナポリタン 単品 700 1 700
26 料理 ナポリタン ランチ 900 2 1,800
27 料理 ナポリタン 大盛 1,050 1 1,050
28 合計料金 14,050

図 2 ワークシート“伝票”の例


(2) ワークシート“伝票”には次の文字列及び計算式を入力する。

[1] 行 2 ~ 27 の種類,品目,タイプには,あらかじめ,次のすべての取り得る組合せを入力する。
種類 :
“飲料”又は“料理”を入力する。
品目 :
飲料又は料理の品目を入力する。
タイプ:
飲料の場合は,サイズの種類又は“セット割引”を入力する。
料理の場合は,オプションの種類を入力する。
[2] 行 2 ~ 27 の単価には,ワークシードメニュー”を参照して,該当する価格を求める計算式を入力する。
[3] 行 2 ~ 27 の料金には,品目,タイプごとの料金を求める計算式を,行 28 にはセット割引を加味した合計料金を求める計算式を入力する。

(3) ワークシート“伝票”を作成する。

[1] ワークシート“伝票”は,顧客のグループ単位に注文をまとめて作成する。
[2] グループ内の個々の顧客の注文に基づき,品目,タイプごとの注文数量を数量に入力する。
[3] 品目,タイプごとの料金が計算され,に合計料金が計算される。

表 1 ワークシート“伝票”で用いる関数

書式 説明
配列(範囲,行位置,列位置) 2 次元の範囲の中から,行位置と列位置を指定して値を取り出

す。行位置は,範囲の中の上端から数えた行数で指定する。列位置は,範囲の中の左端から数えた列数で指定する。

照合一致(検索値,範囲) 1 次元の範囲の中を左端又は上端から検索し,検索値と初めて一致した値が何番目に位置するかを数値で返す。


設問1

 ワークシート“伝票”に関する次の記述中の [   ] に入れる正しい答えを,解答群の中から選べ。

 
 セルD2に単価を求めるための次の計算式を入力して,セルD3~D27に複写する。ここで,複数のワークシート間でデータを参照するには,“ワークシート名!セル”又は“ワークシート名!セルの範囲”という形式で指定する。
  IF(A2 = '飲料', [ a ],[ b ] )
解答群
ア 照合一致(配列(メニュー!$B$4~$E$7,B2,C2),メニュー!$A$4~$A$7)
イ 照合一致(配列(メニュー!$B$4~$E$7,B2,C2),メニュー!$B$3~$E3)
ウ 照合一致(配列(メニュー!$H$4~釘$7,B2,C2),メニュー!$G$4~$G$7)
エ 照合一致(配列(メニュー!$H$4~釘$7,B2,C2),メニュー!$H$3~$J$3)
オ 配列(メニュー!$B$4~$E$7,照合一致(B2,メニュー!$A$4~$A$7),照合一致(C2,メニュー!$B紹~$E$3))
カ 配列(メニュー!$B$4~$E$7,照合一致(B2,メニュー!$B$3~$E$3),照合一致(C2,メニュー!$A$4~$A$7))
キ 配列(メニュー!$B$4~$E$7,照合一致(C2,メニュー!$B$3~$E$3),照合一致(B2,メニュー!$A$4~$A$7))
ク 配列(メニュー!$H$4~釘$7,照合一致(B2,メニュー!$G$4~$G$7),照合一致(C2,メニュー!$H$3~$J$3))
ケ 配列(メニュー!$H$4~釘$7,照合一致(B2,メニュー!$H$3~釘$3),照合一致(C2,メニュー!$G$4~$G$7))
コ 配列(メニュー!$H$4~$J$7,照合一致(C2,メニュー!$H$3~釘$3),照合一致(B2,メニュー!$G$4~$G$7))

〔ワークシート:割引〕

 顧客満足度向上のための施策として,次の割引策を適用することにした。

(1)最適割引
 顧客のグループ内で,料理と飲料のセットの組合せを変えることで,注文時のセット割引額よりも割引額が大きくなる場合がある。注文時の伝票の入力内容を調べ,注文された料理又は飲料の注文数量の少ない方をセット数の上限として,割引額の高い飲料からセットに割り当てていくことによって,セット割引額の合計が最大となるように割引を行う。
(2)数量割引
 数量割引は,飲料を 15 個以上かつ料理を 10 個以上,又は料理と飲料を合わせて 30 個以上を注文した場合に適用され,最適割引時の合計料金から 5 %の割引を行う。
 最適割引及び数量割引の計算を行うためのワークシート“割引”を作成した。そのワークシートの例を,図 3 に示す。
 なお,数量割引後の合計料金は,小数点以下を切り捨てて表示する。

f:id:tamagopanda:20100901202709p:image


表 2 ワークシート“割引”で用いる関数

書式 説明
照合合計(照合値,照合範囲,対応範囲) 照合範囲内のセルにおいて,照合値と等しい値をもつセルをすべて探し出す。そして,照合値と等しい値をもつセルの相対位置と同じ位置にある対応範囲のセルの値(数値)を合計して返す。

照合範囲及び対応範囲は,同じ行数及び同じ列数でなければならない。対応範囲には数値が入っていなければならない。

複数条件照合合計((照合値 1,照合条件 1,照合範囲 1),(照合値 2,照合条件 2,照合範囲 2),対応範囲) 照合範囲 1 のセルにおいて照合値 1 に対して照合条件 1 を満足し,併せて照合範囲 2 内のセルにおいて照合値 2 に対して照合条件 2 を同時に満足するセルをすべて探し出す。双方の照合条件に一致したセルの相対位置と同じ位置にある対応範囲のセルの値(数値)を合計して返す。

照合範囲 1,照合範囲 2 及び対応範囲は,同じ行数及び同じ列数でなければならない。

照合条件 1 及び照合条件 2 には,比較演算子を指定する。

対応範囲には数値が入っていなければならない。


設問2

 ワークシード割引”に関する次の記述中の [   ] に入れる正しい答えを,解答群の中から選べ。

(1) 行 1 ~ 4 では,セット割引,飲料,料理の注文数量から,最適セット数を求める。
[1] ワークシート“伝票”におけるセット割引,飲料の注文数の合計を求める次の計算式をセル B1,B2 に入力する。

  セルB1  [      c      ]
  セルB2  [      d      ]

 セル B3 に料理の注文数の合計を求める計算式を入力する。
[2] 行 4 の最適セット数は,最適割引を行うためのセットの注文数の合計であり,飲料又は料理の注文数の合計値の少ない方になる。最適セット数を求める計算式を,セル B4 に入力する。
(2) 行 7 ~ 13 では,“伝票”を参照しながら,注文時の注文数,セット数及び割引額を,セット割引単価の大きい順に並べ替えた品目ごとに集計する。さらに最適割引を行った場合のセット数の割当数及び割引額の計算を行う。
[1] セル A9 ~ A12 にセット割引単価の大きい順に並べ替えた飲料の品目を入力する。
[2] セル B9 ~ B12 に品目ごとのセット割引額を入力する。
[3] セル C9 に注文時の品目ごとの注文数を求める次の計算式を入力し,セル C10 ~ C12 に複写する。
  [      e      ]
[4] セル D9 に注文時の品目ごとのセット数を求める計算式を入力し,セル D10 ~ D12 に複写する。
[5] セル E9 ~ E12 には,注文時の品目ごとの割引額の計算式を入力する。
[6] セル F9 に最適割引を行うための最適セット数であるセル B4 の値を複写する。次に,セット割引をセット割引単価の大きい品目の順に割り当てたセット数を求めるためにセル G9 に次の計算式を入力し,セル G10 ~ G12 に複写する。
  [      f      ]
[7] セル F10 ~ F13 に,セット数を品目ごとに順次割り当てたときの割当数の残数を求める計算式を入力する。
[8] セル H9 ~ H12 に,最適割引時の品目ごとの割引額の計算式を入力する。
[9] セル C13,D13,E13 に,注文時の注文数,セット数,割引額の合計値を求める計算式を入力する。セル F13 には,合計値ではなく,[7] で割当数の残数を求める計算式を入力する。セル G13,H13 に,最適割引時のセット数,割引額の合計値を求める計算式を入力する。
(3)セルB14に,最適割引時の合計料金を求める計算式を入力する。
(4)数量割引後の合計料金を求める次の計算式をセルB15に入力する。
    [      g      ]

c,d に関する解答群
ア 照合合計(A1,伝票!C2~C27,伝票!E2~E27)
イ 照合合計(A2,伝票!A2~A27,伝票!E2~E27)
ウ 照合合計(A2,伝票!A2~A27,伝票!E2~E27)-B1
エ 照合合計(A3,伝票!A2~A27,伝票!E2~E27)
オ 照合合計(A3,伝票!A2~A27,伝票!E2~E27)-B1
カ 複数条件照合合計((A2,'≠',伝票!A2~A27),(A1,'='伝票!C2~C27),伝票!E2~E2)
キ複数条件照合合計((A3,'='伝票!A2~A27),(A1,'='伝票!C2~C27),伝票!E2~E27)
ク 複数条件照合合計((A3,'='伝票!A2~A27),(A1,'≠',伝票!C2~C27),伝票!E2~E27)

e に関する解答群
ア 照合合計(A9,伝票!$B$2~$B$27,伝票!$E$2~$E$27)
イ 照合合計(A9,伝票!$B$2~$B$27,伝票!$E$2~$E$27)-照合合計(B$7,伝票!$C$2~$C$27,伝票!$E$2~$E$27)
ウ 照合合計(B$7,伝票!$C$2~$C$27,伝票!$E$2~$E$27)
エ 照合合計(B$7,伝票!$C$2~$C$27,伝票!$E$2~$E$27)-照合合計(A9,伝票!$B$2~$B$27,伝票!$E$2~$E$27)
オ 複数条件照合合計((A9,'=',伝票!$B$2~$B$27),(B$7,'=',伝票!$C$2~$C$27),伝票!$E$2~$E$27)
力 複数条件照合合計((A9,'='伝票!$B$2~$B$27),(B$7,'≠',伝票!C$2~C$27),伝票!E$2~E$27)
キ 複数条件照合合計((A9,'≠',伝票!B$2~B$27),(B$7,'=',伝票!C$2~C$27),伝票!E$2~E$27)
ク 複数条件照合合計((A9,'≠'伝票!B$2~B$27),(B$7,'≠',伝票!C$2~C$27),伝票!E$2~E$27)

f に関する解答群
ア IF(F9≧C9,C9,F9)
イ IF(F9≧C9,C9,F9+C9)
ウ IF(F9≧C9,C9,F9-C9)
エ IF(F9≦C9,C9,F9)
オ IF(F9≦C9,C9,F9+C9)
力 IF(F9≦C9,C9,F9-C9)

g に関する解答群
ア B14-IF(論理和(論理積(B2≧15,B3≧10),(B2+B3)≧30),0.05,0)*H13
イ B14-IF(論理積(論理和(B2≧15,B3≧10),(B2+B3)≧30),0.05,0)*H13
ウ (1+IF(論理和(論理積(B2≧15,B3≧10),(B2+B3)≧30),0.05,0))*B14
エ (1+IF(論理積(論理和(B2≧15,B3≧10),(B2+B3)≧30),0.05,0))*B14
オ (1-IF(論理和(論理積(B2≧15,B3≧10),(B2+B3)≧30),0.05,1))*B14
カ (1-IF(論理積(論理和(B2≧15,B3≧10),(B2+B3)≧30),0.05,1))*B14
キ (1-IF(論理積(論理和(B2≧15,B3≧10),(B2+B3)≧30),0.05,0))*B14
ク (1-IF(論理和(論理積(B2≧15,B3≧10),(B2+B3)≧30),0.05,0))*B14


問題掲載者による注意書き

  • 実際の問題文をテキスト化するにあたり,表記の難しい部分を以下のように置き換えている。
    • 丸 1,丸 2 (○の中に数字が入っている)で表記されていた文字は,機種依存文字のため, [1] ,[2] の様に置き換えた。(下線 [1],[2]等)
    • 空欄[ a ][ b ][ c ]等は,実際の問題文中では,四角で囲まれた,a,b,c だったが,[ ]で置き換えた。
    • はてな記法で,二重の丸カッコで囲まれた文字列は、自動的に脚注となるため,二重丸カッコの外側のカッコを,全角のカッコにしている。 
      例 ((こんな感じに))