共通テスト(情報) 過去問
令和5年度(2023年度)追・再試験
問59 (<旧課程>情報関係基礎(第4問) 問8)
問題文
なお、以下の問題を解答するにあたっては、使用する 表計算ソフトウェアの説明(リンク) を参照するとよい。
ある高等学校の体育祭は、a~fの6クラスで競い合う。この体育祭の競技は9つあり、競技ごとに試合数が決まっており、20が最大である。各試合の1位から3位までに得点が与えられ、得点の合計により優勝が決まる。競技ごとに得点は異なり、同順位は存在しない。競技には、必ず全クラスが全試合に出場する。また、点差などから作戦を立て、競技への出場者の変更が可能である。
Yさんは、体育祭で使用するシートの作成を大会本部から依頼され、昨年の結果を動作確認のためのテストデータとして使い、シートを作成することにした。
Yさんは、各クラスが各競技で獲得した得点、全競技での合計得点と総合順位を求めるためのシート3総合結果の作成を行うことにした。セル範囲D2~D7の第1競技における各クラスが獲得した得点は、シート1とシート2の値を用いて、
「1位で獲得した得点+2位で獲得した得点+3位で獲得した得点」で求めることができる。これよりシート3のセルD2に入力する計算式のうち「1位で獲得した得点」の部分は、
[ カ ]([ キ ])*得点一覧!( ク )
となり、これに2位、3位で獲得した得点の計算式を加えて、セルD2の計算式を完成させ、セル範囲D3~D7に複写した。
同様にシート3のセル範囲E2~L7には、第2競技から第9競技で各クラスが獲得した得点を求める適切な計算式を入力した。また、他のセルに関しても適切な計算式を入力した。シート3のセル範囲D8~L8の競技ごとの得点の合計は、シート1のセル範囲F2~F10の値と同じであったので、各クラスが獲得した得点の計算が正しいことが確認できた。
( ク )にあてはまるものを1つ選べ。
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
共通テスト(情報)試験 令和5年度(2023年度)追・再試験 問59(<旧課程>情報関係基礎(第4問) 問8) (訂正依頼・報告はこちら)
なお、以下の問題を解答するにあたっては、使用する 表計算ソフトウェアの説明(リンク) を参照するとよい。
ある高等学校の体育祭は、a~fの6クラスで競い合う。この体育祭の競技は9つあり、競技ごとに試合数が決まっており、20が最大である。各試合の1位から3位までに得点が与えられ、得点の合計により優勝が決まる。競技ごとに得点は異なり、同順位は存在しない。競技には、必ず全クラスが全試合に出場する。また、点差などから作戦を立て、競技への出場者の変更が可能である。
Yさんは、体育祭で使用するシートの作成を大会本部から依頼され、昨年の結果を動作確認のためのテストデータとして使い、シートを作成することにした。
Yさんは、各クラスが各競技で獲得した得点、全競技での合計得点と総合順位を求めるためのシート3総合結果の作成を行うことにした。セル範囲D2~D7の第1競技における各クラスが獲得した得点は、シート1とシート2の値を用いて、
「1位で獲得した得点+2位で獲得した得点+3位で獲得した得点」で求めることができる。これよりシート3のセルD2に入力する計算式のうち「1位で獲得した得点」の部分は、
[ カ ]([ キ ])*得点一覧!( ク )
となり、これに2位、3位で獲得した得点の計算式を加えて、セルD2の計算式を完成させ、セル範囲D3~D7に複写した。
同様にシート3のセル範囲E2~L7には、第2競技から第9競技で各クラスが獲得した得点を求める適切な計算式を入力した。また、他のセルに関しても適切な計算式を入力した。シート3のセル範囲D8~L8の競技ごとの得点の合計は、シート1のセル範囲F2~F10の値と同じであったので、各クラスが獲得した得点の計算が正しいことが確認できた。
( ク )にあてはまるものを1つ選べ。
- B2
- B$2
- $B2
- C3
- C$3
- $C3
- D2
- D$2
- $D2
正解!素晴らしいです
残念...
この過去問の解説 (2件)
01
この問題は、COUNTIF(第1競技順位!B$3~B$22,A2)*得点一覧!(ク)の[ク]に入るセル参照を考えます。「得点一覧」シートでは、行2に各競技の1位の得点が入っています(B2=第1競技の1位得点、C2=第2競技の1位得点…)。この式をセルD2に入力し、右方向(E2、F2…)に複写すると列が自動的にC、D…とずれて各競技の1位得点を参照できます。また下方向(D3、D4…)への複写時は行2のままにしておきたいため、行を絶対参照($)で固定する必要があります。したがって[ク]はB$2が正解です。
B2は列・行ともに相対参照です。セルD2では「得点一覧!B2」(第1競技の1位得点)を正しく参照できますが、この式をD3、D4…に複写すると「得点一覧!B3」「得点一覧!B4」…と行がずれてしまい、1位の得点ではなく2位・3位の得点を参照してしまいます。正しくありません。
B$2は列が相対参照・行が絶対参照($2)です。下方向に複写しても行2は固定されたまま1位の得点を参照し続け、右方向に複写するとB→C→D…と列が変わって各競技の1位得点を正しく参照できます。正解の選択肢です。
$B2は列が絶対参照($B)・行が相対参照です。右方向に複写しても列Bが固定されたままになるため、第2競技以降の1位得点(列C、D…)を参照することができません。また下方向に複写すると行がずれて1位以外の得点を参照してしまいます。正しくありません。
C3は「得点一覧」シートのC3を参照しますが、C列は第2競技の得点列であり、行3は2位の得点です。第1競技の1位得点を参照するB2とは異なるため、正しい式になりません。また行・列ともに相対参照なので複写時にさらにずれてしまいます。
C$3は行を絶対参照($3)で固定しますが、参照先は「得点一覧」シートのC列で第2競技の得点列です。第1競技の1位得点はB行2にあるため、C列・行3を参照するこの式は正しくありません。
$C3は列を絶対参照($C)で固定しますが、第1競技の1位得点はB列・行2に存在します。C列・行3は第2競技の2位得点であり、正しい参照先ではありません。
D2は「得点一覧」シートのD列・行2を参照します。D列は第3競技の得点列であり、第1競技の1位得点(B2)とは異なります。また行が相対参照のため下方向に複写するとずれてしまいます。正しくありません。
D$2は行を絶対参照で固定していますが、参照先はD列(第3競技の得点列)です。第1競技の1位得点はB列・行2にあるため、D列を参照するこの式は正しくありません。
$D2は列を絶対参照($D)で固定しますが、D列は第3競技の得点列です。第1競技の1位得点はB列・行2にあるため、この参照先は誤りです。また行が相対参照のため下方向への複写でもずれてしまいます。
セル参照の「絶対参照($)」と「相対参照」の使い分けが重要です。複写しても変えたくない行・列には$を付けて絶対参照にします。今回は式を右にも下にも複写するため、列は相対参照(競技ごとにB→C→Dと変わる)・行は絶対参照(常に1位得点のある行2を固定)という設定が必要です。これによりB$2が正解となります。
参考になった数0
この解説の修正を提案する
02
シート3「総合結果」のセルD2に、クラス"a"が第1競技の20試合の中で、1位になって得た得点を求める式を入力します。
必要なデータは「第1競技順位」のシートの中でセルB3~B22の範囲にあるクラス名"a"の個数、および「得点一覧」のシートの中の「第1競技」の「1位」の得点です。
まず、「第1競技」の「1位」の得点ですが、「得点一覧!B2」で参照することができます。ただ、セルD2に入力するこの式を下のセル(D2~D7)に複写すると、相対参照によってセル「B2」の部分が「B3」、「B4」と順に変化してしまいます。よって、下方向に複写しても行番号が変化しないように、行番号を絶対参照にし、「B$2」と入力する必要があります。よって、「第1競技」の「1位」の得点の参照先は「B$2」となります。
次に、クラス"a"が第1競技で1位になった回数ですが、「第1競技順位」のシートの「B3~B22」の範囲にあるクラス名"a"を数えることになります。"a"だけを数えるので、「COUNT」関数ではなく、「COUNRIF」関数を使って、"a"の文字だけを数えます。これより「COUNTIF(第1競技順位!B3~B22、"a"」という式が考えられますが、この式を下方向に複写して次の"b"クラス、"c"クラス・・も順にカウントしなければならないので、「COUNRIF」関数の最後の引数の"a"の部分を、全てのクラス名が表示されてある「A列」のセル「A2」としなければなりません。
また、カウントするセル範囲の「第1競技順位!B3~B22」ですが、こちらも相対参照によって、下のセルに複写すると行番号がずれていってしまうので、行番号を固定するため(行番号を絶対参照とするため)「1競技順位!B$3~B$22」としなければなりません。
よって、セルD2に入力する式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!B$2」となります。
以上より、解答欄(ク)には「B$2」の選択肢の番号が入ります。
(ク)に入るのが「B2」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!B2」となります。この式がセル「D2」に入力されているときは正しい結果が得られますが、この式をD2の下のセル(D3、D4・・)に複写したとき、「得点一覧!B2」の「B2」の部分が、相対参照によって、「B3」、「B4」・・と、順にずれていってしまいます。よって、第1競技の1位の得点を正しく参照することはできず、正しい式ではありません。
解説の冒頭で述べたとおり、正しい式です。
(ク)に入るのが「$B2」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!$B2」となります。この式がセル「D2」に入力されているときは正しい結果が得られますが、この式をD2の下のセル(D3、D4・・)に複写したとき、「得点一覧!$B2」の「$B2」の部分が、相対参照によって、「$B3」、「$B4」・・と、順にずれていってしまいます。よって、第1競技の1位の得点を正しく参照することはできず、正しい式ではありません。
(ク)に入るのが「C3」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!C3」となりますが、「得点一覧」のシートのC列には、1位になったときの得点のデータはないので、正しい式とはなりません。
(ク)に入るのが「C$3」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!C$3」となりますが、「得点一覧」のシートのC列には、1位になったときの得点のデータはないので、正しい式とはなりません。
(ク)に入るのが「$C3」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!$C3」となりますが、「得点一覧」のシートのC列には、1位になったときの得点のデータはないので、正しい式とはなりません。
(ク)に入るのが「D2」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!D2」となりますが、「得点一覧」のシートのD列には、1位になったときの得点のデータはないので、正しい式とはなりません。
(ク)に入るのが「D$2」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!D$2」となりますが、「得点一覧」のシートのD列には、1位になったときの得点のデータはないので、正しい式とはなりません。
(ク)に入るのが「$D2」だとすると、1位になったときの得点を求める式は、「COUNTIF(第1競技順位!B$3~B$22、A2)*得点一覧!$D2」となりますが、「得点一覧」のシートのD列には、1位になったときの得点のデータはないので、正しい式とはなりません。
「得点一覧」のシートの1位の得点を参照したいので、「B列」であり、「C列」や「D列」ではありません。あとは、相対参照か絶対参照かということになりますが、式を下方向に複写しても行願号は変化しないようにしたいので、「行番号の絶対参照」ということになります。
参考になった数0
この解説の修正を提案する
前の問題(問58)へ
令和5年度(2023年度)追・再試験 問題一覧
次の問題(問60)へ