令和7年度(2025年度)大学入学共通テスト『情報Ⅰ』試作問題の全問解説です。問題 → 解答 → 端的な解説 → 深掘りの順に並べています。まず問題を読み,答えを確かめ,短い解説で理解し,余力があれば深掘りタブを開いてください。解答・配点はすべて大学入試センター公表の正解表と照合済みです。
このページの内容
問1 令和7年度 共通テスト『情報Ⅰ』試作問題 第1問 問1
1問題
第1問 次の問い(問1〜4)に答えよ。(配点 20)
問1 インターネットを使ったサービス利用に関する次の問い(a・b)に答えよ。
a SNSやメール,Webサイトを利用する際の注意や判断として,適当なものを,次の⓪〜⑤のうちから二つ選べ。ただし,解答の順序は問わない。[ア]・[イ]
⓪ 相手からのメッセージにはどんなときでも早く返信しなければいけない。
① 信頼関係のある相手とSNSやメールでやり取りする際も,悪意を持った者がなりすましている可能性を頭に入れておくべきである。
② Webページに匿名で投稿した場合は,本人が特定されることはない。
③ SNSの非公開グループでは,どんなグループであっても,個人情報を書き込んでも問題はない。
④ 一般によく知られているアニメのキャラクターの画像をSNSのプロフィール画像に許可なく掲載することは,著作権の侵害にあたる。
⑤ 芸能人は多くの人に知られていることから肖像権の対象外となるため,芸能人の写真をSNSに掲載してもよい。
b インターネット上の情報の信ぴょう性を確かめる方法として,最も適当なものを次の⓪〜③のうちから一つ選べ。[ウ]
⓪ 検索エンジンの検索結果で,上位に表示されているかどうかで判断する。
① Q&Aサイトの回答は,多くの人に支持されているベストアンサーに選ばれているかどうかで判断する。
② SNSに投稿された情報は,共有や「いいね」の数が多いかどうかで判断する。
③ 特定のWebサイトだけでなく,書籍や複数のWebサイトなどを確認し,比較・検証してから判断する。
2解答
[ア]・[イ]=①・④(各1点,順序は問わない)
[ウ]=③(配点2点)
3解説(端的に)
a ⓪は「どんなときでも早く返信」が無理な要求です。授業中でも就寝中でも返せ,ということになってしまいます。③も「どんなグループであっても」が言い過ぎで,非公開でもメンバー経由の流出やアカウント乗っ取りは起こります。②は,投稿には通信の記録が残り,法的な手続きを経て発信者が特定されうるので誤り。⑤は,芸能人にも肖像権はあり,むしろ有名人には無断で経済的に利用されない権利(パブリシティ権)まで認められるので誤り。残った①(なりすましを想定する)と④(キャラクター画像の無断利用は著作権侵害)が正解です。
b ⓪①②は,どれも「検索順位」「ベストアンサー」「いいねの数」という人気の指標で中身の正しさを決めようとしています。人気は正しさを保証しません。③だけが,書籍や別のサイトという独立した情報源に当たって突き合わせる方法になっています。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
著作権。アニメのキャラクターの絵は「美術の著作物」として著作権で守られます。自分だけで楽しむための複製(私的使用のための複製)は例外として認められますが,SNSのプロフィール画像は不特定多数が見られる公開の場なので,この例外の範囲を超えます。だから④は「侵害にあたる」で正しい。
肖像権とパブリシティ権。肖像権は「勝手に撮られない・公表されない」権利で,有名・無名を問わず誰にでもあります。さらに芸能人など顧客吸引力のある人には,その名前や姿を無断で商業利用されないパブリシティ権が認められています。「有名だから権利がなくなる」は逆で,守られる範囲がむしろ増えます。
匿名と匿名性。ハンドルネームで書けば「他の利用者からは」誰か分かりません。しかしサービス側には接続の記録が残り,しかるべき手続きを経れば発信者にたどり着けます。「他人から見えない」ことと「誰にも分からない」ことは別物です。
クロスチェック。一つの情報について,元をたどれる複数の情報源を突き合わせて確かめること。ここが b の核心です。
検算 — 別の道すじで確かめる
a を「反例が1つあれば崩れる文」から探す。「どんなときでも」(⓪)「どんなグループであっても」(③)は,例外を1つも許さない全称の言い切りです。⓪には「試験中で返信できない」,③には「そのグループのメンバーが外部に転載する」という反例がすぐ作れます。
ただしこの見分け方を「断定的に書いてある選択肢は誤り」と広げてはいけません。④の「著作権の侵害にあたる」も断定ですが,これは法律上のルールを述べた正しい断定です。使えるのは「例外を一切許さない全称の言い切り」に限る,と範囲を切って覚えてください。
b の誤答を最後まで当てはめてみる。⓪の基準を貫くと,検索結果の1位に表示されている広告記事や,たまたま多くリンクされた古い記事を「正しい」と判定してしまいます。①の基準では,多くの人の支持を集めてベストアンサーに選ばれた回答が「正しい」になります。しかし支持が集まる理由は,読みやすさや共感であることも多く,内容が事実かどうかとは別です。②の基準では,驚きの強いデマほど拡散されやすいので,拡散数が多いデマを「正しい」と判定してしまいます。いずれも人気の指標を正しさの代わりに使うという同じ弱点をもっています。③はこの弱点にあてはまりません。複数の独立した情報源が同じことを言っているかどうかを見る方法だからです。
ここで効く一般則・学問的背景
- 「人気」は「正しさ」の代用にならない。閲覧数・いいね・順位は,多くの人が反応したことを示すだけで,内容が事実かどうかは何も語りません。
- 信ぴょう性の確認は「発信者・根拠・日付・複数ソース」。誰が書いたか,一次情報(元のデータや公式発表)にたどれるか,いつの情報か,別の情報源も同じことを言っているか。この4点をそろえるのが基本形です。
- 公開の範囲が狭いことは,情報が漏れないことを意味しない。非公開グループでも,中の人が転載すれば外に出ます。「見える人を絞る」対策は,見える人が悪意をもったときには効きません。
- 権利は「知られているかどうか」で消えない。有名だから肖像権がない,無料で公開されているから著作権がない,といった推論は成り立ちません。
学問的背景。「複数の情報源を突き合わせる」という作法は,もともと歴史学の史料批判やジャーナリズムの裏取りで育った技術で,インターネット時代に入ってファクトチェックとして制度化されました。一方で,検索やSNSの推薦アルゴリズムは「その人が好みそうな情報」を優先して見せるため,自分と似た意見ばかりが目に入るフィルターバブル,同じ意見が反響し合って強まるエコーチェンバーが生じます。人気の指標を正しさの代わりに使うと,この構造にそのまま乗ってしまう——ここが b の設問が突いている点です。『情報Ⅱ』では,こうした推薦の仕組みそのもの(協調フィルタリングなど)や,情報システムが社会に与える影響をデータから検討する場面につながります。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第1章 情報社会の問題解決 に対応します。
問2 令和7年度 共通テスト『情報Ⅰ』試作問題 第1問 問2
1問題
問2 次の文章の空欄[エ]・[オ]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。
データの通信において,受信したデータに誤りがないか確認する方法の一つにパリティチェックがある。この方法では,データにパリティビットを追加してデータの誤りを検出する。ここでは,送信データの1の個数を数えて,1の個数が偶数ならパリティビット0を,1の個数が奇数ならパリティビット1を送信データに追加して通信することを考える。例えば,図1に示すように送信データが「01000110」の場合,パリティビットが1となるため,パリティビットを追加したデータ「010001101」を送信側より送信する。
【図1】送信データ「01000110」とパリティビット。横に並んだ2つの枠からなり,左の枠に8桁の「01000110」,そのすぐ右に接して1桁の枠があり「1」が入っている。左の枠の上に「送信データ」,右の1桁の枠の下に「パリティビット」というラベルが,それぞれ枠を指す矢印つきで書かれている。つまり送信されるのは,元の8ビットの右端にパリティビットを1ビット足した合計9ビットである。(原図は問題冊子PDFを参照)
受信側では,データの1の個数が偶数か奇数かにより,データの通信時に誤りがあったかどうかを判定できる。この考え方でいくと,[エ]。
例えば,16進法で表記した「7A」を2進法で8ビット表記したデータに,図1と同様にパリティビットを追加したデータは,「[オ]」となる。
[エ]の解答群
⓪ パリティビットに誤りがあった場合は,データに誤りがあるかどうかを判定できない
① パリティビットを含め,一つのビットの誤りは判定できるが,どのビットに誤りがあるかは分からない
② パリティビットを含め,一つのビットの誤りは判定でき,どのビットに誤りがあるかも分かる
③ パリティビットを含め,二つのビットの誤りは判定できるが,どのビットに誤りがあるかは分からない
④ パリティビットを含め,二つのビットの誤りは判定でき,どのビットに誤りがあるかも分かる
[オ]の解答群
⓪ 011110100 ① 011110101 ② 011110110
③ 011110111 ④ 101001110 ⑤ 101001111
2解答
[エ]=①(配点3点)
[オ]=①(配点3点)
3解説(端的に)
[エ] この方式では,パリティビットまで含めた9ビット全体の1の個数が必ず偶数になるように作られています(元データの1が偶数個なら0を足して偶数のまま,奇数個なら1を足して偶数になる)。どこか1ビットが0↔1と反転すると1の個数が1だけ変わり,偶数が奇数に崩れるので「誤りがある」と分かります。ところが,受信側が手にしているのは「偶数か奇数か」というたった1個の情報だけ。9か所のうちどこが反転したかまでは特定できません。よって①。
[オ] 16進法の1桁は2進法の4桁に対応します。7=0111,A=1010なので,「7A」は01111010。この中の1の個数は5個で奇数なので,パリティビットは1。右端に足して011110101,つまり①です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
16進法と2進法の対応。16=2⁴なので,16進法の1桁がちょうど2進法の4桁に対応します。覚えるのは0〜15の16通りだけ。
0=0000,1=0001,2=0010,3=0011,4=0100,5=0101,6=0110,7=0111,8=1000,9=1001,A=1010,B=1011,C=1100,D=1101,E=1110,F=1111。
16進法が使われるのは,2進法だと桁数が多くて読みにくいからです。8ビットがきっちり16進2桁に収まります。
パリティビット。「1の個数の偶奇をそろえるために足す1ビット」。この問題のように全体を偶数にそろえる方式を偶数パリティといいます(全体を奇数にそろえる奇数パリティもあります)。問題文が「偶数なら0,奇数なら1を足す」と定義しているので,この問題では偶数パリティです。
検出と訂正の違い。「誤りがある」と気づくのが誤り検出,「どこがどう誤ったかを直す」のが誤り訂正。パリティビット1個でできるのは検出までです。
検算 — 別の道すじで確かめる
[オ]を10進法経由で確かめる。16進法の7Aは 7×16+10=122。122を2進法にすると,122=64+32+16+8+2 なので 01111010。先ほどと一致します。1の個数は 64,32,16,8,2 の5個分で奇数。よってパリティビットは1,答えは011110101。
[オ]の誤答が,どの誤読から生まれるかを実際にたどる。
- ⓪ 011110100:先頭8ビットは01111010で正しいのに,パリティが0。1の個数5は奇数なので1を足すべきところ,「偶数なら1・奇数なら0」と規則を逆に覚えるとこうなります。
- ② 011110110/③ 011110111:先頭8ビットが01111011。これは下位4桁をA(1010)ではなくB(1011)と取り違えた形です。ちなみに01111011の1の個数は6個で偶数なのでパリティは0となり,②はその意味では内部的につじつまが合ってしまう。だからこそAを1010と正しく変換できるかが勝負になります。
- ④ 101001110/⑤ 101001111:先頭8ビットが10100111。これは「7A」を上位=A,下位=7と桁の順を逆に読んだ形(A=1010,7=0111)です。10100111の1の個数は5個で奇数なのでパリティは1,したがって「桁順だけを間違えた人」はぴたりと⑤にたどり着きます。⑤は最も誘い込みの強い誤答です。
[エ]の誤答を,具体例で潰す。送信データ010001101(図1の例,1の個数は4個で偶数)を使います。
- ⓪:末尾のパリティビットだけが反転して010001100になったとすると,1の個数は3個で奇数になり,受信側は「どこかに誤りがある」と判定できます。パリティビットが反転しても偶奇の崩れ方はデータ部が反転したときと同じように現れるので,「判定できない」は誤りです。
- ②:010001101の左から3番目が反転して011001101になったとします。1の個数は5個で奇数。しかし「奇数になった」という事実は,左から1番目が反転しても3番目が反転しても同じように起こります。9通りの反転を区別できないので「どのビットかも分かる」は誤り。
- ③④:左から1番目と3番目の2ビットが同時に反転して111001101になったとします。この2か所はどちらも0→1の反転なので,1の個数は元の4個から2個増えて6個。偶数のままなので,受信側は「誤りなし」と判定してしまいます。二つのビットの誤りは判定できないので,③も④も誤りです。
この4つを落とす論拠を①に当ててみると,「1ビット反転→偶奇が崩れる→検出できる」「偶奇1個の情報では位置は決まらない」の両方に①は矛盾しません。①だけが生き残ります。
ここで効く一般則・学問的背景
- 1ビットのパリティで検出できるのは「奇数個のビット誤り」だけ。2個・4個…と偶数個(0個を除く)が同時に反転すると1の個数の偶奇が元に戻り,素通りしてしまいます。
- 検出と訂正は別の能力で,訂正のほうが多くの余分なビットを必要とする。位置を特定するには,偶奇1個ではなく複数の検査を組み合わせる必要があります。
- 付け足す情報量が増えるほど誤りに強くなるが,そのぶん送るデータ量も増える。強さと効率は同時には最大化できないので,用途に応じて合計のコストが小さくなる点を選びます。
- 16進法⇄2進法の変換は,4桁ずつ区切れば必ず1対1で対応する。10進法を経由しなくても直接置き換えられます(10進法経由は検算用と考えると速い)。
学問的背景。誤り検出・訂正の理論は,1940年代のベル研究所でR.W.ハミングが「計算機が週末に止まってしまう」問題に取り組んだところから本格化しました。パリティ1個では位置が分からない——この設問の[エ]そのもの——という限界を破るために,ハミングは複数のパリティを重ねて「どのビットが誤ったか」を番号として読み取れるハミング符号を考案します。同じ時期にC.E.シャノンが情報理論を打ち立て,雑音のある通信路でも一定の限界までなら誤り率をいくらでも小さくできることを示しました。現代の通信や記録では,パリティの発展形であるCRC(巡回冗長検査)やリード・ソロモン符号などが使われ,QRコードが多少汚れても読めるのもこの技術のおかげです。なお,16進法「7A」を2進法に直す部分は『ゼロから始める情報I』第3章(コンピュータとプログラミング)の内容で,この設問は情報の表し方と通信のしくみをまたいでいます。『情報Ⅱ』では,こうした符号化の考え方がデータの圧縮や暗号と並べて扱われます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します(2進法・16進法の変換は第3章)。
問3 令和7年度 共通テスト『情報Ⅰ』試作問題 第1問 問3
1問題
問3 次の文章を読み,空欄[カ]〜[ク]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。
基本的な論理回路には,論理積回路(AND回路),論理和回路(OR回路),否定回路(NOT回路)の三つがあげられる。これらの図記号と真理値表は次の表1で示される。真理値表とは,入力と出力の関係を示した表である。
表1 図記号と真理値表
| 回路名 | 論理積回路 | 論理和回路 | 否定回路 |
|---|---|---|---|
| 図記号 | 入力A・Bを左から受け,右辺が半円状にふくらんだD字形の記号。出力はX | 入力A・Bを左から受け,左辺がくぼみ右端がとがった弓形の記号。出力はX | 入力Aを左から受ける三角形で,右の頂点に小さな○(反転を表す)が付く。出力はX |
| 真理値表 | A=0,B=0→X=0/A=0,B=1→X=0/A=1,B=0→X=0/A=1,B=1→X=1 | A=0,B=0→X=0/A=0,B=1→X=1/A=1,B=0→X=1/A=1,B=1→X=1 | A=0→X=1/A=1→X=0 |
(1) S航空会社が所有する旅客機の後方には,トイレが二つ(A・B)ある。トイレAとトイレBの両方が同時に使用中になると乗客の座席前にあるパネルのランプが点灯し,乗客にトイレが満室であることを知らせる。入力Aは,トイレAが使用中の場合には1,空いている場合には0とする。Bについても同様である。出力Xはランプが点灯する場合に1,点灯しない場合に0となる。これを実現する論理回路は次の図2である。
【図2】(1)の論理回路。左から入力A・Bの2本の線が,破線で囲まれた1つの箱に入る。箱の中には空欄[カ]があり,箱の右から1本の線が出て出力Xになる。つまり[カ]には,AとBの2入力から1出力を作る回路がそのまま1つ入る。(原図は問題冊子PDFを参照)
(2) S航空会社では新しい旅客機を購入することにした。この旅客機では,トイレを三つ(A・B・C)に増やし,三つのうちどれか二つ以上が使用中になったら混雑を知らせるランプを点灯させる。入力や出力は(1)と同様とする。この場合の真理値表は[キ]で,これを実現する論理回路は図3である。
【図3】(2)の論理回路。左に入力A・B・Cの3本の線があり,それぞれ途中の黒丸(分岐点)から枝分かれしている。分岐した線は3つの論理積回路につながり,上段の論理積回路にはAとB,中段の論理積回路にはBとC,下段の論理積回路にはAとCが入る(Aから下向きに伸びた線が下段の論理積回路の入力になる)。上段と中段の論理積回路の出力2本は,1つの論理和回路に入る。その論理和回路の出力と,下段の論理積回路の出力の合計2本が,破線で囲まれた箱に入り,箱の中の空欄が[ク],箱から出た線が出力Xになる。(原図は問題冊子PDFを参照)
[カ],[ク]の解答群(いずれも2入力・1出力の回路の図記号)
⓪ 論理積回路(AND)
① 論理和回路(OR)
② 論理積回路の出力に否定回路をつないだもの(NAND)
③ 論理和回路の出力に否定回路をつないだもの(NOR)
④ 下側の入力だけを否定回路に通してから,上側の入力とともに論理積回路に入れたもの
⑤ 下側の入力だけを否定回路に通してから,上側の入力とともに論理和回路に入れたもの
[キ]の解答群(A,B,Cを入力,Xを出力とする真理値表。行の順は000,001,010,011,100,101,110,111)
⓪ X=0,0,0,0,0,0,0,1
① X=0,1,1,0,1,0,0,1
② X=0,0,0,1,0,1,1,1
③ X=0,1,1,1,1,1,1,1
2解答
[カ]=⓪(配点2点)
[キ]=②(配点2点)
[ク]=①(配点2点)
3解説(端的に)
[カ] 「AとBの両方が同時に使用中のときだけ点灯」=「AもBも1のときだけX=1」。これは論理積そのものなので⓪。
[キ] 「三つのうち二つ以上が使用中なら点灯」を,8通り全部で書き出します。使用中0個(000)と1個(001,010,100)はX=0,2個(011,101,110)と3個(111)はX=1。並べるとX=0,0,0,1,0,1,1,1で,②と一致します。
[ク] 図3は,A・B,B・C,A・Cという2つずつの組み合わせ3通りの論理積を作っています。「どれか一組でも両方使用中なら,二つ以上使用中」なので,3つの論理積のうち1つでも1ならXを1にすればよい。上2つはすでに論理和回路でまとめられているので,その結果と残りのA・Cを合流させる[ク]も論理和。よって①です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
3つの基本回路。論理積(AND)は「両方1のときだけ1」,論理和(OR)は「どちらか1つでも1なら1」,否定(NOT)は「0と1を入れ替える」。図記号は,AND=右がまるく張り出したD字形,OR=左がくぼんで右がとがった弓形,NOT=三角形の先に小さな○。小さな○は「そこで反転する」という印で,これが付いているかどうかで意味が正反対になります。
真理値表の書き方。入力がn個なら行は2ⁿ行。3入力なら8行です。000,001,010,…と2進法の数を小さい順に並べると,書き落としがなくなります。
日本語から論理式への言い換え。「両方とも」→論理積,「どちらか一方でも/少なくとも1つ」→論理和,「〜でない」→否定。ここを機械的に置き換えられるようにしておくと,回路の問題は文章題に化けます。
検算 — 別の道すじで確かめる
[キ]の誤答が,それぞれ「どんな条件」を表しているかを読む。
- ⓪ X=0,0,0,0,0,0,0,1:111のときだけ1。つまり「三つすべてが使用中」。二つ使用中(110など)で点灯しないので条件に合いません。
- ① X=0,1,1,0,1,0,0,1:使用中が1個または3個のときに1。つまり「使用中の数が奇数」。二つ使用中(011,101,110)でX=0になってしまいます。
- ③ X=0,1,1,1,1,1,1,1:000以外すべて1。つまり「一つ以上使用中」。一つだけ使用中(100など)でも点灯してしまい,「二つ以上」ではありません。
この3つを落とすのに使った2つの検査——「A=1,B=1,C=0(二つ使用中)でX=1か」「A=1,B=0,C=0(一つだけ)でX=0か」——を②に当てると,②は110→1,100→0。両方通ります。正解が生き残ることを確認できました。
[ク]を,回路を1つずつ入れて試す。図3で,論理和回路の出力は「A・B」または「B・C」=上側の入力,下段の論理積回路の出力「A・C」=下側の入力です。
- ⓪(AND):A=1,B=1,C=0 のとき,上側=A・B=1,下側=A・C=0。ANDなので X=0。二つ使用中なのに点灯せず,不可。
- ② (NAND)/③ (NOR):A=B=C=0 のとき上側も下側も0。NANDは0と0で1,NORも0と0で1。全員空きなのにランプが点灯してしまい,不可。
- ④ (下側を反転してAND):A=1,B=0,C=1 のとき,上側=0(A・B=0,B・C=0),下側=A・C=1で反転して0。X=0。二つ使用中なのに点灯せず,不可。
- ⑤ (下側を反転してOR):A=B=C=0 のとき,上側=0,下側=0を反転して1。X=1。全員空きで点灯してしまい,不可。
- ① (OR):8通りを最後まで書き出します。000→上側0・下側0でX=0。001→0・0でX=0。010→0・0でX=0。011→B・C=1なので上側1でX=1。100→0・0でX=0。101→上側0・下側A・C=1でX=1。110→A・B=1なので上側1でX=1。111→上側1でX=1。並べるとX=0,0,0,1,0,1,1,1で,②の真理値表と全行で一致します。
誤答を落とすのに使った「全員空きなら消灯」「二つ使用中なら点灯」という2つの検査は,正解①では両方満たされています。
ここで効く一般則・学問的背景
- 「n個のうちk個以上」は,k個ずつの組み合わせの論理積をすべて論理和でつなげば作れる。この問題は3個のうち2個以上なので,AB+BC+CA という形になります。
- 回路の出力に小さな○が付いたら,入力が全部0のときの出力を必ず確かめる。NAND・NORは「全部0で出力1」になるため,「何も起きていないのにランプが点く」という不自然さで一発で落とせることが多いのです。
- 真理値表が一致すれば,回路の形が違っても同じ働きをする。逆に,1行でも食い違えばその回路は不正解です。判定は必ず全行で行います。
- AB+BC+CA は3入力の多数決を表す。3人のうち2人以上が賛成なら可決,と同じ形です。
学問的背景。「かつ・または・でない」を代数のように計算する体系は,19世紀のイギリスの数学者ジョージ・ブールが論理を記号で扱おうとして作り上げたもので,ブール代数と呼ばれます。当初は純粋な論理学の道具でしたが,1938年にC.E.シャノンが修士論文で「電気のスイッチの直列・並列がブール代数の積・和にそのまま対応する」ことを示し,論理と回路が結び付きました。ここから,あらゆる計算を0と1の回路に落とし込む道が開けます。この問題のAB+BC+CAという多数決回路は,実際に航空機や宇宙機の制御でも使われる考え方で,同じ計算を3系統で行って「2つ以上が同じ答えを出したらそれを採用する」という三重冗長化(TMR)の心臓部です。1つが壊れても残り2つで正しい答えを守れる——トイレの混雑ランプと同じ回路が,安全を支える設計になっているわけです。『情報Ⅱ』では,こうした論理回路が加算器やメモリへと積み上がり,コンピュータの内部構造として扱われます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
問4 令和7年度 共通テスト『情報Ⅰ』試作問題 第1問 問4
1問題
問4 次の文を読み,空欄[ケ]〜[サ]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。ただし,空欄[コ]・[サ]は解答の順序は問わない。
情報を整理して表現する方法として,アメリカのリチャード・S・ワーマンが提唱する「究極の5つの帽子掛け」というものがある。これによれば,情報は無限に存在するが,次の5つの基準で情報の整理・分類が可能という。
- 場所・・・物理的な位置を基準にする 例:都道府県の人口,大学のキャンパスマップ
- アルファベット・・・言語的な順番を基準にする(日本語なら五十音) 例:辞書,電話帳
- 時間・・・時刻の前後関係を基準にする 例:歴史年表,スケジュール
- カテゴリー・・・物事の差異により区別された領域を基準にする 例:生物の分類,図書館の本棚
- 階層(連続量)・・・大小や高低など数量的な変化を基準にする 例:重要度順のToDoリスト,ファイルサイズの大きい順
この基準によれば,図4の「鉄道の路線図」は[ケ]を基準にして整理されており,図5のある旅行会社のWebサイトで提供されている「温泉がある宿の満足度評価ランキング」は[コ]と[サ]を基準に整理・分類されていると考えられる。
【図4】鉄道の路線図。「東西線」「南北線」「東豊線」という3つの路線名のラベルが付いた,太い帯状の線が描かれている。帯の上には駅を表す丸が順に並び,それぞれの丸に駅名が添えられている。
・南北線はおおむね上下(縦)方向に伸び,上から順に 麻生/北34条/北24条/北18条/北12条/さっぽろ/大通/すすきの/中島公園/幌平橋/中の島/平岸/南平岸/澄川/自衛隊前/真駒内。
・東西線は左上から中央へ下りて中央付近を左右(横)方向に通り,そこから右下へ伸びる。順に 宮の沢/発寒南/琴似/二十四軒/西28丁目/円山公園/西18丁目/西11丁目/大通/バスセンター前/菊水/東札幌/白石/南郷7丁目/南郷13丁目/南郷18丁目/大谷地/ひばりが丘/新さっぽろ。
・東豊線は右上から中央へ下り,中央から右下へ伸びる。順に 栄町/新道東/元町/環状通東/東区役所前/北13条東/さっぽろ/大通/豊水すすきの/学園前/豊平公園/美園/月寒中央/福住。
3本の帯は中央付近で交わり,交点にあたる駅(乗換駅)は他より大きな角丸の枠で駅名が示されている。さっぽろは南北線と東豊線の2本に,大通は3本すべてに同時に載っている。図の中に時刻・日付・所要時間の表示はなく,順位や数値を書いた欄もない。(原図は問題冊子PDFを参照)
【図5】温泉がある宿の満足度評価ランキング。旅行会社のWebサイトの画面を模した図。上部に会社名の見出し「〇△※旅行社 ホテル・旅館 満足度評価ランキング」がある。その下に,丸いボタン(ラジオボタン)が6つ並び,それぞれ「リゾートホテル」「シティホテル」「温泉がある宿」「食事が人気の宿」「隠れ宿」「ペットが泊まれる宿」とラベルされ,このうち「温泉がある宿」だけが選択された状態になっている。さらにその下に「温泉がある宿の満足度評価ランキング1〜10位」という見出しと,「前へ」「次へ」というページ送りのリンクがある。本体は3列の表で,列見出しは左から「順位」「総合評価」「ホテル・旅館(宿泊プラン)」。行は上から1位・2位・3位・4位・5位・6位の順に並ぶ(見出しは「1〜10位」だが,図では枠が切れており7位以下は描かれていない。「次へ」は11位以降の次ページへのリンク)。「総合評価」欄は★印の並びで示され,1位・2位は★5つ,3位〜6位は★4つ+白抜き1つ。「ホテル・旅館(宿泊プラン)」欄には県名・温泉名・宿名・「1泊2日」・金額が書かれており,県名は上から順に 長野/神奈川/群馬/大分/秋田/愛媛である。宿の種類でまず選び分け,選ばれた種類の中を順位の順に上から並べるという2段構えの画面である。(原図は問題冊子PDFを参照)
[ケ]〜[サ]の解答群
⓪ 場所 ① アルファベット ② 時間
③ カテゴリー ④ 階層(連続量)
2解答
[ケ]=⓪(配点1点)
[コ]・[サ]=③・④(両方正解で3点,いずれか一方のみ正解の場合は1点。順序は問わない)
3解説(端的に)
[ケ] 路線図が伝えたいのは「どの駅がどの順に並び,どこで乗り換えられるか」という物理的な位置の関係です。5つの基準のうち「場所」にあたるので⓪。距離や縮尺は正確ではありませんが,「東西線は横方向」「乗換駅は中央」というように位置関係そのものを基準に描かれています。
[コ]・[サ] 図5は2段構えです。まず上のボタンで「リゾートホテル/シティホテル/温泉がある宿/…」と宿の種類で選び分けています。これは物事の差異による区別=カテゴリー(③)。次に,選ばれた「温泉がある宿」の中を1位・2位・3位…と満足度評価の高い順に並べています。これは数量的な変化を基準にした並び=階層(連続量)(④)。よって③・④です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
「究極の5つの帽子掛け」=LATCH。Location(場所),Alphabet(アルファベット),Time(時間),Category(カテゴリー),Hierarchy(階層)の頭文字をとってLATCHと呼ばれます。「情報の並べ方は結局この5通りしかない」という主張で,何かを整理するときの発想の枠になります。
「分ける」基準と「並べる」基準の違い。カテゴリーはグループに分ける基準(順番は本質ではない)。階層は大小の順に並べる基準(順番こそが本質)。同じ画面の中で両方が同時に使われることはよくあります。図5がまさにその例です。
2つ選ばせる設問の読み方。「[コ]と[サ]」のように2つ問われたら,たいてい役割の違う2つが入ります。同じ種類の基準を2つ探すのではなく,「分け方は何か」「並べ方は何か」と別々に探すと当たります。
検算 — 別の道すじで確かめる
判定の基準をはっきりさせます。「その基準が,図の中で実際に整理・分類(=分ける/並べる)に使われているか」で見ます。図5について残りの3つを当てはめます。
- ⓪ 場所:表の各行には長野・神奈川・群馬・大分・秋田・愛媛といった県名が書かれています。しかし1位から順に並んだ県名は地理的な順序になっておらず,県名は各行の説明として添えられているだけで,分け方にも並べ方にも使われていません。よって基準ではありません。
- ① アルファベット:宿名や県名が五十音順(あるいはアルファベット順)に並んでいれば該当しますが,並び順は順位です。よって基準ではありません。
- ② 時間:画面に時刻や日付の前後関係で並べた部分はありません。「1泊2日」は宿泊プランの長さを表す言葉であって,行の並び順を決めてはいません。よって基準ではありません。
この「実際に分ける/並べるのに使われているか」という基準を③④に当てると,③は6つの宿の種類に分けている,④は順位で並べている,といずれも使われています。誤答を落とす論拠が正解を落としていないことを確認できました。
[ケ]の検算。路線図にも同じ基準——「その基準が,図の中で実際に整理・分類(=分ける/並べる)に使われているか」——を当て,⓪以外の4つを順に落とします。
- ① アルファベット:南北線を上からたどると 麻生・北34条・北24条・北18条・北12条・さっぽろ・大通・すすきの…。「さっぽろ」の次が「大通」ですが,五十音なら「お」は「さ」より前に来るはずで,この並びは五十音順になっていません。駅名は路線をたどって隣り合う順に並んでいるだけで,言語的な順番は並べ方に使われていません。
- ② 時間:図の中に時刻・日付・所要時間の表示は一つもありません。時刻表ではないので,時間は分け方にも並べ方にも使われていません。
- ③ カテゴリー:ここが迷いどころです。確かに駅は3本の帯に分かれています。しかし,ある駅がどの帯に載るかを決めているのはその駅が地上のどの経路の上にあるかであって,駅の種類の違いではありません。路線の帯は「どの駅とどの駅が線路でつながっているか」という位置のつながりをそのまま描いた線なので,「場所」から独立した別の分類軸にはなっていないのです。実際,大通は3本すべての帯に,さっぽろは2本の帯に同時に載っており,駅を種類ごとの領域に切り分けたものでないことが図から見て取れます。路線名の「東西線」「南北線」が方角の名前であることも同じ方向を指しています。
- ④ 階層(連続量):駅に順位や数量を書いた欄はなく,大小の順に並べ替えた列もありません。北34条・北24条・北18条・北12条や,西28丁目・西18丁目・西11丁目のように数が小さくなっていく並びは見えますが,これは「〇条」「〇丁目」という住所の呼び名が中心に近づくほど小さくなるためで,数量の大小を基準に駅を並べ替えた結果ではありません。現に同じ東西線には宮の沢・発寒南・琴似のように数を持たない駅名も混じっていて,数の大小では列全体を並べられません。
残るのは⓪の場所です。この基準を当てると,駅の並ぶ順・隣り合う駅・帯の交わる位置は,どれも「どの駅がどこにあるか」で決まっており,実際に整理に使われています。誤答を落とした論拠が正解を落としていないことも確認できました。よって[ケ]は⓪です。
ここで効く一般則・学問的背景
- 整理の基準は,1つの画面に複数同居しうる。「分ける基準」と「並べる基準」は別々に選べるので,2つ問われたらこの2軸を疑うのが定石です。
- データに書かれていることと,整理に使われていることは別。県名が載っていても,それが分け方・並べ方に使われていなければ「場所」で整理されているとは言いません。
- 「場所」は縮尺の正確さを要求しない。路線図のように距離を大きく歪めても,位置の関係(順序・隣接・交差)が保たれていれば「場所」を基準にした整理です。
- 「階層(連続量)」は,数量の大小で順序が決まるもの。ランキング,価格順,ファイルサイズ順などがこれにあたります。ラベルを付け替えても順序が変わらない点が,カテゴリーとの違いです。
学問的背景。リチャード・ソウル・ワーマンは建築家出身のデザイナーで,のちにTEDカンファレンスを創始した人物です。1989年の著書『情報選択の時代』(Information Anxiety)で,情報があふれることによる不安を扱い,その処方箋として「究極の5つの帽子掛け」を示しました。彼は自らの仕事をインフォメーション・アーキテクト(情報建築家)と名づけ,ここから,Webサイトなどの構造を設計する情報アーキテクチャという分野が育っていきます。実際,図5のように「まず絞り込み条件(ファセット)で分け,その中を指標で並べ替える」という画面は,通販サイトから図書館の蔵書検索まで,現在のあらゆる検索インタフェースの標準形になっています。図書館学のファセット分類(インドのランガナタンによるコロン分類法)にも同じ発想があり,情報を整理する技術は分野を越えて共通です。『情報Ⅱ』では,こうした構造化の考え方が,データベースの設計やコンテンツの制作へと展開されます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第2章 情報デザイン に対応します。
A問1 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 A 問1
1問題
第2問 次の問い(A・B)に答えよ。(配点 30)
A 次の太郎さんと先生の会話文を読み,問い(問1〜4)に答えよ。
太郎:二次元コードって様々なところで使われていて,便利ですね。
先生:二次元コードといってもいろいろ種類があるけれど,日ごろよく目にするものは日本の企業が考えたんだよ。
太郎:すごい発明ですね。企業だから特許を取ったのでしょうか。
先生:もちろん。[ア]世の中で広く使われるようになったんだよ。
太郎:どのくらいの情報を入れられるのでしょうか。
先生:大きさにもよるけど,図1ぐらいの大きさであれば,数字なら187文字,英小文字なら78文字,記号や漢字なら48文字を入れられるよ。二次元コードの形状にはどんな特徴があるかな?
太郎:黒白の小さな正方形で構成されていて,3か所の隅に二重の少し大きな正方形がありますね。
先生:黒白の小さな正方形はセルと言って,1と0に符号化されるんだよ。図1の二次元コードは縦×横が33×33のセルで構成されているけど,文字種や文字数などによってセルの縦と横の数が変わり,それにつれて二次元コードの大きさも変わるね。(下線部A)3か所の隅にある二重の少し大きな正方形は,読み取り機にこの二次元コードがあることを教えている位置検出の目印なんだ。
太郎:この二次元コードって一部を隠しても正しく読み取れるんですよね。
先生:(下線部B)誤り訂正機能だね。工場などでの製品管理でも使えるように,汚れや破損などで一部が読み取れなくても復元できるんだよ。読み取れない面積の割合によって復元できるレベルは4段階あるんだ。
太郎:すごい技術ですね。
先生:そうだね。自分でも二次元コードを作成できるから,いろいろ試してみたらどうかな。
【図1 二次元コードの例】黒白の小さな正方形(セル)が縦33×横33に並び,全体として一つの正方形をなしている,いわゆるQRコード風の図。外周に枠線(罫)は引かれておらず,セルの集まりがそのまま正方形の輪郭をつくっている。左上・右上・左下の3か所の隅に,同じ形の「二重の少し大きな正方形」が1つずつ置かれている。右下の隅には,その目印は置かれていない(原図は問題冊子PDFを参照)。
問1 空欄[ア]に当てはまる文として最も適当なものを,次の⓪〜③のうちから一つ選べ。
⓪ そこで,使用料を高くすることでこの二次元コードの価値が上がったから
① しかし,その後特許権を放棄して誰でも特許が取れるようにしたから
② そして,特許権を行使して管理を厳密にしたから
③ でも,特許権を保有していても権利を行使しないとしていたから
2解答
[ア]=③(配点3点)
3解説(端的に)
直前は「特許を取ったのでしょうか」→「もちろん」,直後は「世の中で広く使われるようになった」。つまり空欄には「特許は取った。それなのに広まった」をつなぐ理由が入ります。
③は「特許権は持っているが,権利を行使しない(=誰でも自由に使ってよい)」という意味です。特許を持ちながら使用を制限しなかったので,多くの企業や個人が安心して採用し,一気に普及した——これが「もちろん(取った)」と「広く使われた」を無理なくつなぎます。
他は,⓪と②は「使わせにくくする」方向なので普及の理由になりません。①は「特許権を放棄」と書きながら「誰でも特許が取れる」と続く点が事実として成り立ちません。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
特許権は,発明をした人に一定期間(出願から原則20年)その発明を独占的に使う権利を与える制度です。ここで大事なのは,特許権は「持つこと」と「行使すること」が別だという点。権利を持っていても,権利者が「誰でも使っていいですよ」と言えば,他人は自由に使えます。
「権利を持つ」=他人の使用を止められる立場になること。「権利を行使する」=実際に止めたり,使用料を請求したりすること。この2つを分けて読めるかどうかが,この設問の分かれ目です。
接続表現に注目する読み方も道具です。選択肢の頭は「そこで」「しかし」「そして」「でも」と全部違います。空欄の直前は肯定(もちろん=取った),直後も肯定的な結果(広く使われた)。ふつう「特許を取る」と「広く使われる」は逆向きの出来事なので,逆接(でも/しかし)が来るはずだと当たりをつけられます。
検算 — 別の道すじで確かめる
選択肢を空欄に入れて,会話としてそのまま読み直します。
⓪「もちろん。そこで,使用料を高くすることでこの二次元コードの価値が上がったから世の中で広く使われるようになったんだよ。」——使用料が高ければ採用をためらう企業が増えます。「高くしたから広まった」は因果として逆です。
①「しかし,その後特許権を放棄して誰でも特許が取れるようにしたから」——前半の「放棄」だけなら普及の理由になり得ますが,後半の「誰でも特許が取れる」が成り立ちません。特許は「新しいこと(新規性)」が条件なので,すでに公開された発明について,あとから別の誰かが同じ内容で特許を取ることはできません。文全体として誤りです。
②「そして,特許権を行使して管理を厳密にしたから」——行使して厳密に管理すれば,使える人は限られます。普及の理由になりません。
③「でも,特許権を保有していても権利を行使しないとしていたから」——「もちろん(取った)」を「でも」で受け,「行使しない」→「誰でも使える」→「広く使われた」と,理由がまっすぐつながります。
4つのうち,前後と因果が合うのは③だけです。
ここで効く一般則・学問的背景
- 空欄補充では,まず空欄の前後がどんな関係(順接か逆接か,理由か結果か)かを決める。選択肢の接続表現がその手がかりになる。
- 知的財産権は「守る」ためだけの制度ではなく,あえて開放して普及させるという使い方がある。規格になれば,読み取り機やソフトの市場が広がり,権利者にも利益が返ってくる。
- 選択肢の文が2つの主張をつないでいるとき(①の「放棄した」+「誰でも特許が取れる」),片方が正しくても,もう片方が誤っていれば選択肢全体が誤りになる。長い選択肢は必ず分解して読む。
- ただし「開放すれば必ず普及する」とは言えない。読み取り機の低価格化やカメラ付き携帯電話の普及といった条件がそろって初めて広まった。会話文が主張しているのは「権利を行使しなかったことが普及を後押しした」までである。
学問的背景。二次元コード(QRコード)は1994年に日本の自動車部品メーカーが開発した規格で,特許は取得したうえで「規格に従って使う限り権利を行使しない」と表明されました(開発したのはこのメーカー本体の一部門で,二次元コード事業を担う子会社が分社・設立されたのは2001年です)。その後,日本の国家規格であるJIS(1999年)として,さらに国際規格であるISO/IEC 18004(2000年)として標準化され,工場の部品管理から決済・チケット・ワクチン証明まで広がっています。「権利を確保したうえで開放する」というこの型は,ソフトウェアのオープンソースライセンスや,通信規格の標準必須特許(FRAND条件でのライセンス)とも共通する考え方です。情報Ⅰでは知的財産権を「守るもの」として学びますが,情報社会ではどう共有するかを設計することも同じくらい重要なテーマになります。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第1章 情報社会の問題解決 に対応します。
A問2 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 A 問2
1問題
(会話文中の下線部A)「3か所の隅にある二重の少し大きな正方形は,読み取り機にこの二次元コードがあることを教えている位置検出の目印なんだ。」
問2 下線部Aの目印は,図2のように,例えば(a)〜(c)のどの角度で読み取っても,黒白黒白黒の比が 1:1:3:1:1 となることで,二次元コードの目印として認識できるようになっている。これは,図3のように円形の目印でも同じと考えられるが,正方形の方が都合がよい。その理由として最も適当なものを,後の⓪〜③のうちから一つ選べ。[イ]
【図2 位置検出の目印とその黒白の比】左側に,正方形の目印を拡大した図。外側から順に「黒い正方形の枠」「白い正方形の枠」「中央の黒い正方形」が入れ子になっている(=二重の正方形)。この目印の中心を通る3本の矢印が描かれていて,(a)は水平方向,(b)は斜め方向,(c)は垂直方向。右側には(a)(b)(c)それぞれの矢印に沿って並ぶ黒白の帯が3本並び,いずれも左から「1:1:3:1:1」と等しい比が書き添えられている。つまりどの向きに切っても比が同じことを示す図。
【図3 円形の目印】図2の正方形を円に置き換えた図。外側から順に「黒い円環」「白い円環」「中央の黒い円」が同じ中心で入れ子になっている(同心円)。中心を通る3本の矢印が描かれ,(d)は水平方向,(e)は斜め方向,(f)は垂直方向。図2と違い,黒白の比の帯は書かれていない(原図は問題冊子PDFを参照)。
⓪ 円形では,(d)〜(f)の角度によって黒白の比が異なってしまい,正しく読み取れなくなる可能性があるから。
① 円形だと上下左右がないので,二次元コードの向きが分からなくなるから。
② プリンタやディスプレイの解像度によっては,正方形の目印に比べて正しく読み取れる小さな円形の目印を作ることが難しくなるから。
③ 円形では目印が斜めに傾いていても,それを認識することができないため正しく読み取ることができないから。
2解答
[イ]=②(配点3点)
3解説(端的に)
プリンタもディスプレイも,画面や紙の上に正方形の点(画素・ドット)を格子状に並べて図形を描いています。だから正方形は,小さくしても点の格子にぴったり合い,輪郭が崩れません。
一方,円形は斜めの輪郭を正方形の点で近似するので,小さくすると輪郭がギザギザ(階段状)になります。すると設計どおりの 1:1:3:1:1 という比が保てず,読み取りに失敗しやすくなります。同じ精度を出そうとすれば目印を大きくするしかなく,コードが無駄に大きくなってしまいます。よって②。
①と③は「向き」「傾き」の話ですが,位置検出の目印は3か所の配置で向きが分かるうえ,円は回転しても形が変わらないので傾きにはむしろ強い。⓪は,同心円なら中心を通るどの直線でも比は同じになるので誤りです。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
解像度とは,画像を何個の点(画素)で表すかの細かさのことです。ディスプレイの画素も,プリンタのドットも,基本は正方形のマス目が縦横に整列したものです。この格子の上に図形を描くとき,マス目の境界と図形の輪郭が一致すればきれいに描け,一致しなければマス目単位で「塗る/塗らない」を決めるしかなく,輪郭がギザギザになります。これをジャギー(エイリアシング)といいます。
回転対称も道具です。円(同心円)は中心のまわりに何度回しても同じ形です。だから「傾いたら分からなくなる」ということは起きません。逆に正方形は90度ごとにしか重ならないので,傾きの影響を受けます。この設問は「円の弱点はどこか」を聞いていて,弱点は向きではなく,格子との相性だ,というのが答えの筋です。
1:1:3:1:1 の比の意味も押さえておきましょう。目印は外から「黒枠・白枠・黒の中心」の入れ子です。中心を通る線に沿って幅を測ると,黒1・白1・黒3・白1・黒1 という長さの並びになります。読み取り機は画像の中を走査し,この比が現れた場所を「目印だ」と判断します。比で判断するので,コードが大きく写っていても小さく写っていても同じ規則が使えます。
検算 — 別の道すじで確かめる
⓪はなぜ誤りか。図3の目印は同心円,つまり中心が共通の円が入れ子になった形です。中心を通る直線を引くと,どの角度で引いても,通過する円環の順番と幅は同じです。したがって(d)水平でも(e)斜めでも(f)垂直でも黒白の比は変わりません。図3にわざわざ中心を通る3本の矢印が描かれているのは,「円でも比は同じになる」という問題文の前提(=これは,図3のように円形の目印でも同じと考えられる)を示すためです。⓪はこの前提そのものを否定しているので選べません。
①はなぜ誤りか。この誤答を最後まで適用してみます。「円だと向きが分からない」が本当なら,円形の目印を使ったコードは上下逆さまでも読めてしまい,データが正しく取り出せないはずです。しかし目印は3か所の隅にあり,右下だけありません。3点の位置関係(どの点が欠けている角か)を見れば,個々の目印が円であってもコード全体の向きは一意に決まります。つまり「向きが分からなくなる」という結論に到達しません。
③はなぜ誤りか。これも最後まで適用します。「円形は傾くと認識できない」が本当なら,コードを少し斜めに置いた瞬間に読めなくなるはずです。しかし円は回転しても形が変わらないので,傾いた画像の中でも「黒い円・白い円環・黒い円環」という並びはそのまま現れます。むしろ傾きに強いのが円の性質で,結論が逆になります。
②が生き残ることの確認。ごく小さなサイズで印刷する場面を考えます。正方形の目印は,画素の格子に沿って辺を置けるので,1画素の幅でも「黒1・白1・黒3・白1・黒1」を正確に作れます。円は,同じ大きさでは輪郭が階段状になり,測る向きによって幅が1画素ぶんずれることが起こります。比が 1:1:3:1:1 から外れれば目印と認識されません。つまり,正方形が円より有利になるのは「小さくしても比を正確に作れるか」というこの点だけです。逆向きの差もあって,傾き(回転)に対しては円の方が強い——だから①や③のように「向き」「傾き」を持ち出すと,差の向きが反対になってしまいます。解答群の4つのうち,正方形を選ぶ理由になっている差を突いているのは②だけ,というのがこの設問の答えです。
ここで効く一般則・学問的背景
- ディスプレイもプリンタも出力の最小単位は正方形の格子である。格子に沿った直線・正方形は再現しやすく,曲線や斜線は近似になる。これは文字のフォント,地図記号,アイコン設計にも共通する制約。
- 読み取り側の設計では,絶対的な大きさではなく「比」で判定すると,撮影距離やコードの印刷サイズが変わっても同じ規則が使える。
- 「同じ機能を果たす2つの案のどちらが良いか」を問われたら,機能そのものではなく,作る側・出力する側の制約で差がつくことが多い。この設問はまさにその型。
- ただし「円形は常に不利」ではない。実際,円形の位置検出パターンを使う二次元コード規格も存在する。この設問が言っているのは「同じ小ささで比を正確に保つのは正方形の方がやさしい」までである。
学問的背景。1:1:3:1:1 という比は,QRコードの位置検出パターン(ファインダパターン)の仕様として実際に定められているものです。読み取り機は画像を1行ずつ走査し,黒白の連続する長さの比がこの並びになる場所を探します。この「走査線上の比で探す」という手法は,画像処理におけるパターンマッチングの一種で,回転や拡大縮小に強い特徴量を設計するという発想につながります。情報Ⅱでは画像のデジタル表現や特徴抽出をさらに詳しく扱いますが,出発点は「出力装置は正方形の画素の集まりである」という,情報Ⅰのデジタル化の基礎です。標本化・量子化で学ぶ「連続的なものを格子で近似すると誤差が出る」という話が,そのままここに効いています。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第2章 情報デザイン に対応します。
A問3 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 A 問3
1問題
問3 太郎さんは,先生から二次元コードを作成することができる図4のようなWebアプリケーションを教えてもらった。この二次元コード画像作成ツールは,二次元コード化する文字列とセルのサイズ(大きさ),誤り訂正のレベル(復元能力),画像ファイル形式を指定すると二次元コードの画像が作成できるものであった。
【図4 二次元コード画像作成ツールの画面】Webブラウザの画面に「二次元コード画像作成ツール」という見出しがあり,上から順に4つの入力欄が並ぶ。「1 コード化する文字列」はテキスト入力欄(例として abcdefghijklmno が入力されている)。「2 セルサイズ(大きさ)」は 小・中・大・特大 の4択ラジオボタン(中が選択)。「3 誤り訂正のレベル(復元能力)」は レベルL(7%)・レベルM(15%)・レベルQ(25%)・レベルH(30%) の4択ラジオボタン(レベルHが選択)。「4 画像ファイル形式」は PNG形式(推奨)・JPG形式・GIF形式 の3択ラジオボタン(PNGが選択)。最下部に「二次元コード画像の保存」ボタン(原図は問題冊子PDFを参照)。
下線部Bについて,興味を持った太郎さんは,この作成ツールを使い,二次元コード化する文字列の長さと誤り訂正のレベルによってどのようにセルの縦と横の数が変化するか調べることにした。そこで,試しに英小文字(a〜z)で構成する文字列の文字数をいろいろ変えて二次元コードを作成したところ,表1のようになった。表中の n×n はそれぞれセルの縦と横の数を表している。
なお,この作成ツールではセルの縦と横の数は自動的に最適な数に調整される。また,復元能力の値(%)が大きいほど誤りを訂正する能力が高いことを表し,例えば,復元能力30%は,二次元コードの面積の最大30%が読み取れなくてもデータを復元できることを意味する。
| 15文字 | 20文字 | 30文字 | 40文字 | |
|---|---|---|---|---|
| 復元能力7% | 21×21 | 25×25 | 25×25 | 29×29 |
| 復元能力30% | 29×29 | 29×29 | 33×33 | 37×37 |
この表1の結果から考えられることとして適当なものを,次の⓪〜⑤のうちから二つ選べ。ただし,解答の順序は問わない。[ウ]・[エ]
⓪ 同じ復元能力であれば,文字数に比例してセルの数が多くなり,同じセルの大きさであれば二次元コードも大きくなる。
① 復元能力ごとに,文字数の一定の範囲でセルの縦と横の数が決まり,文字数が多くなるほど段階的にセルの縦と横の数は多くなる。
② 文字数とセルの数には関係が見られない。
③ ある文字列を復元能力30%で作成した二次元コードは,同じ文字列を復元能力7%で作成したものに比べ約4倍のセルの数がある。
④ 復元能力30%にするためには,復元能力7%と比べより多くの情報が必要となる。
⑤ 同じ文字数であれば復元能力を変えてもセルの数は変わらない。
2解答
[ウ]・[エ]=①・④(順序は問わない。配点 各2点)
3解説(端的に)
表1を横に読むと,復元能力7%の行は 21×21 → 25×25 → 25×25 → 29×29。20文字と30文字が同じ25×25です。つまり文字数が増えても縦横の数はすぐには増えず,ある範囲ごとに階段状に増えます。これが①。同時に,20文字と30文字で同じ値になる時点で「文字数に比例」ではないので⓪は消え,増えてはいるので②も消えます。
表1を縦に読むと,どの文字数でも復元能力30%の行の方が大きくなっています(15文字なら21×21と29×29)。同じデータを入れるのに余分なセルが必要ということは,訂正用の情報を追加しているということ。これが④で,同時に⑤は消えます。
③は,15文字で比べるとセルの数は 21×21=441個 と 29×29=841個。約1.9倍で4倍ではありません。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
「セルの数」と「セルの縦と横の数」を区別するのがこの設問の要です。n×n のコードのセルの数は n2 個。縦横の数が29から37に増えたとき,縦横の数は約1.28倍ですが,セルの数は 841→1369 で約1.63倍になります。長さの倍率と面積(個数)の倍率は違う——ここを取り違えると③に引っかかります。
誤り訂正の考え方も押さえましょう。汚れて読めない部分があっても元に戻せるのは,あらかじめ「元のデータから計算した,答え合わせ用の余分なデータ」を一緒に入れてあるからです。この余分な部分を冗長性といいます。復元能力を上げるとは冗長性を増やすことなので,同じ文字数でも必要なセルが増えます。
比例の意味も正確に。「yがxに比例する」とは y=ax の形になること,つまり x が2倍なら y も2倍になることです。「増えている」だけでは比例とは言いません。
検算 — 別の道すじで確かめる
⓪を最後まで適用する。「文字数に比例してセルの数が多くなる」を復元能力7%の行に当てはめます。20文字のとき25×25=625個。比例なら30文字では 625×(30÷20)=937.5個 になるはずです。しかし表1の30文字は25×25=625個で,20文字とまったく同じ。比例は成り立ちません。なお⓪の後半「同じセルの大きさであれば二次元コードも大きくなる」は正しい記述ですが,前半が誤りなので選択肢全体としては誤りです。
③を最後まで適用する。「30%は7%の約4倍のセルの数」を4つの文字数すべてで確かめます。15文字:841÷441≒1.9倍。20文字:841÷625≒1.35倍。30文字:1089÷625≒1.74倍。40文字:1369÷841≒1.63倍。どれも4倍からは遠い値です。もし「縦横の数が4倍」と読み違えても,29÷21≒1.4倍で,やはり合いません。
⑤を最後まで適用する。15文字の列を縦に見ると 21×21 と 29×29 で明らかに違います。表1のどの列でも上下の値が一致していません。よって誤りです。
②を最後まで適用する。「関係が見られない」なら,文字数を増やしたときに縦横の数が減ることもあるはずです。しかし表1では,どちらの行でも左から右へ「同じか,増える」方向にしか動いていません。増加傾向がはっきり出ているので誤りです。
①と④が生き残ることの確認。①「一定の範囲でセルの縦と横の数が決まり,段階的に多くなる」——7%の行で 21・25・25・29,30%の行で 29・29・33・37。どちらも同じ値が続く区間があり,その先で1段上がっています。表1と矛盾しません。④「30%にするにはより多くの情報が必要」——同じ文字数どうしで比べて,30%の方が大きい。15文字・20文字・30文字・40文字の4つすべてで成り立ちます。
ここで効く一般則・学問的背景
- 長さの倍率と個数(面積)の倍率は別物。縦横が k 倍なら,セルの数は k2 倍になる。「約4倍」と書かれたら,どちらの倍率の話かを必ず確認する。
- 「比例」は「増加」より強い主張。データが増加していても,同じ値が並ぶ区間が1つでもあれば比例ではない。表から比例を否定するには,反例を1組見つければ足りる。
- 誤り訂正能力を上げると,同じ情報量でも全体のデータ量は増える。復元能力とコードの大きさはトレードオフの関係にあり,両方を同時に良くすることはできない。用途(汚れやすい工場か,画面表示か)に応じてどこで折り合いをつけるかを選ぶ。
- ④が主張しているのは「同じ文字数どうしで比べると,30%の方がセルの数が多い」という表1から確かめられる事実であって,「どんな文字列でも1段以上必ず大きくなる」という一般法則ではない。表から読み取れる範囲を答えるのがこの設問の趣旨である。
学問的背景。QRコードの誤り訂正にはリード・ソロモン符号という方式が使われています。1960年にリードとソロモンが発表したこの符号は,データを多項式とみなし,本来必要な点より多くの点を記録しておくことで,一部が失われても元の多項式を復元できるという原理に基づきます。CD・DVD・地上デジタル放送・深宇宙探査機の通信など,「読み直しがきかない場面」で広く使われてきました。QRコードの規格では縦横のセル数が21から177まで4刻みの「型番」として決められており,表1で値が21・25・29・33・37と4ずつ飛んでいるのはそのためです。文字数が増えても同じ型番でおさまるうちは大きさが変わらず,あふれた瞬間に次の型番へ上がる——これが①の「段階的」の正体です。情報Ⅱではデータの符号化と圧縮・誤り検出をさらに掘り下げますが,土台にあるのは「情報を守るには冗長性を足す」という情報Ⅰのデジタル化の考え方です。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第2章 情報デザイン に対応します。
A問4 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 A 問4
1問題
問4 次に,太郎さんは,図4のWebアプリケーションを使って試しに表2のⅠ〜Ⅲの三つの文字列について二次元コードを作成してみた。復元能力は7%と30%の両方を作成し,セルサイズもいろいろ変えてみたところ,表3に示す二次元コードが作成された。その結果,復元能力7%と30%のそれぞれにおいて作成された二次元コードのセルの数は,Ⅰ〜Ⅲの文字列で異なっていた。また,Ⅰ〜Ⅲの文字列はアルファベットや記号,漢字などが含まれているので,表1の英小文字のみで構成された文字列の文字数とセルの縦と横の数の関係には必ずしもなっていないことが分かった。表3の空欄[オ]〜[ク]に当てはまる適当な二次元コードを,後の解答群のうちから一つずつ選べ。
| Ⅰ | https://www.example.ne.jp/ |
|---|---|
| Ⅱ | DNC高等学校 https://www.example.ne.jp/ |
| Ⅲ | DNC高等学校 東京都目黒区駒場*-**-** https://www.example.ne.jp/ |
| Ⅰの二次元コード | Ⅱの二次元コード | Ⅲの二次元コード | |
|---|---|---|---|
| 復元能力7% | [オ] | 29×29(コード画像あり) | [カ] |
| 復元能力30% | 33×33(コード画像あり) | [キ] | [ク] |
【表3の図】表3は3列2行の表で,各ますに二次元コードの画像とその縦×横の数が入る。すでに埋まっているのは2か所だけで,「Ⅱの二次元コード・復元能力7%」に 29×29 のコード画像,「Ⅰの二次元コード・復元能力30%」に 33×33 のコード画像。残り4か所が空欄[オ][カ][キ][ク]になっている(原図は問題冊子PDFを参照)。
[オ]〜[ク]の解答群(それぞれ二次元コードの画像が示され,その上に縦×横の数が書かれている)
⓪ 33×33 ① 49×49 ② 25×25 ③ 37×37
2解答
[オ]=②,[カ]=⓪,[キ]=③,[ク]=①(配点5点。すべて正解の場合のみ)
3解説(端的に)
使う手がかりは3つです。(i) 同じ復元能力なら,文字列が長いほど縦横の数は大きい(文字列の長さは Ⅰ<Ⅱ<Ⅲ)。(ii) 同じ文字列なら,復元能力30%の方が7%より大きい。そして(iii) 4つの選択肢を4か所に一つずつ割り当てる——同じ選択肢を2か所に使うことはできません。
7%の行:[オ]<29×29<[カ]。選択肢で29×29より小さいのは25×25だけなので[オ]=②。
30%の行:33×33(Ⅰ)<[キ]<[ク]。残る選択肢は 33×33・37×37・49×49 の3つですが,[キ][ク]はどちらも33×33より大きくなければならないので,そこに入れるのは 37×37 と 49×49 の2つだけ。すると33×33の行き場は[カ]しかなく,[カ]=⓪(33×33)に決まります。残り2つを大小順に並べて[キ]=③(37×37),[ク]=①(49×49)。
ここで(iii)は飾りではありません。(i)(ii)だけなら,たとえば[カ]=37×37 として 7%の行を 25/29/37,30%の行を 33/37/49 とすると,行の大小も列の大小も「各行の3つは互いに異なる」も全部満たしてしまいます。これを退けているのは「37×37を[カ]と[キ]の2か所に使えない」という1対1の割り当てだけです。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
大小関係だけで解くタイプの問題です。二次元コードの画像そのものを見比べる必要はまったくなく,添えられた「縦×横の数」だけで決まります。画像は目くらましです。
使う関係は2方向。表3を横に見ると,同じ復元能力での文字列の長さ比べ(Ⅰ<Ⅱ<Ⅲ)。表3を縦に見ると,同じ文字列での復元能力比べ(7%<30%)。この2つを組み合わせると,4つの空欄に入る値の順序がしぼれます。
もうひとつ大事なのが問題文の条件を条件として使うことです。「復元能力7%と30%のそれぞれにおいて作成された二次元コードのセルの数は,Ⅰ〜Ⅲの文字列で異なっていた」——これは各行の3つがすべて別の値だという宣言です。だから7%の行に29×29と同じ値は入りません。さらに「一つずつ選べ」なので,4つの選択肢を4か所に1対1で割り当てます。この1対1の条件が,大小関係だけでは決まらない[カ]を決める決め手になります。
なお問題文は「表1の関係には必ずしもなっていない」と断っています。表2の文字列は英小文字だけでなく記号や漢字を含むので,表1の文字数と縦横の数の対応表をそのまま当てはめてはいけません。使えるのは大小の向きだけです。
検算 — 別の道すじで確かめる
決めた割り当てを表3に書き戻して,すべての関係を確かめます。
| Ⅰ | Ⅱ | Ⅲ | |
|---|---|---|---|
| 7% | 25×25(オ) | 29×29 | 33×33(カ) |
| 30% | 33×33 | 37×37(キ) | 49×49(ク) |
横方向:7%の行は 25<29<33 で,Ⅰ<Ⅱ<Ⅲ の順に増えていて3つとも別の値。30%の行は 33<37<49 で同じく成立。
縦方向:Ⅰは 25<33,Ⅱは 29<37,Ⅲは 33<49。どの文字列でも30%の方が大きい。4つの選択肢も1か所ずつ使われていて,すべて矛盾なし。
[カ]に37×37や49×49を入れたらどうなるか。仮に[カ]=37×37とすると,1対1の割り当てなので37×37はもう使えず,30%の行に残るのは 33×33 と 49×49。しかし30%の行のⅠはすでに33×33なので,[キ]か[ク]に33×33が入ることになり,「Ⅰ<Ⅱ<Ⅲ」に反します(同じ値が2つ現れ,各行3つとも異なるという条件も破れます)。仮に[カ]=49×49としても,同じ理由で33×33の行き場がなくなります。したがって[カ]は33×33しかありません。ここで効いているのは大小関係ではなく「同じ選択肢を2度使えない」という条件です。実際,もし重複が許されるなら 7%=25/29/37,30%=33/37/49 という並べ方も大小関係だけは満たしてしまいます。
[キ]と[ク]を入れ替えたらどうなるか。[キ]=49×49,[ク]=37×37 とすると,30%の行が 33<49>37 となり,Ⅱ<Ⅲ に反します。よって入れ替えは不可です。
ここで効く一般則・学問的背景
- 選択肢に数値が添えられているときは,まず数値だけで順序を作る。画像や図の見た目で選ぼうとすると時間を失う。
- 「一つずつ選べ」は1対1対応の指示。同じ選択肢を2か所に使えないという制約自体が,強い手がかりになる。この設問では,大小関係だけでは決まらない空欄が実際にこの条件だけで決まる。
- 「〜はそれぞれ異なっていた」のような但し書きは,解くための条件として書かれている。読み飛ばすと候補がしぼれなくなる。
- 一方で,行と列の大小関係だけでは,たとえば「Ⅱの7%」と「Ⅰの30%」のように斜めの関係は決まらない。実際この表でも 29×29(Ⅱ・7%)<33×33(Ⅰ・30%)となっているが,これは与えられた値から読み取れることであって,一般則から導いたものではない。斜め方向を根拠に使わないよう注意する。
学問的背景。同じ文字数でも,何の文字を使うかで必要なデータ量は変わります。QRコードには数字専用・英数字専用・8ビットバイト・漢字という4つのモードがあり,数字は1文字あたり約3.3ビット,英数字は約5.5ビット,漢字は13ビットで表せます。表2のⅡ・Ⅲに含まれる「DNC高等学校」「東京都目黒区駒場」のような全角文字が,URLだけのⅠに比べて一気にデータ量を押し上げるのはこのためです。会話文にあった「数字なら187文字,英小文字なら78文字,記号や漢字なら48文字」という数値も,同じ大きさのコードに入る文字数が文字種で3倍以上違うことを示しています。文字をどう符号化するかでデータ量が変わるという話は,文字コード(ASCII・Shift_JIS・UTF-8)や圧縮と地続きで,情報Ⅱのデータサイエンスでもテキストデータの扱いとして再び登場します。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第2章 情報デザイン に対応します。
B問1 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 B 問1
1問題
B 次の文章を読み,後の問い(問1〜3)に答えよ。
Mさんのクラスでは,文化祭の期間中2日間の日程でクレープを販売することにした。1日目は,慣れないこともあり,客を待たせることが多かった。そこで,1日目が終わったところで,調理の手順を見直すなど改善した場合に,どのように待ち状況が変化するかシミュレーションすることにした。なお,このお店では同時に一人の客しか対応できないとし,客が注文できるクレープは一枚のみと考える。また,注文は前の客に商品を渡してから次の注文を聞くとして考える。
問1 次の文章および表中の空欄[ケ]〜[シ]に当てはまる数字をマークせよ。
まず,Mさんは,1日目の記録を分析したところ,注文から商品を渡すまでの一人の客への対応時間に約4分を要していることが分かった。
次に,クラスの記録係が1日目の来客時刻を記録していたので,最初の50人の客の到着間隔を調べたところ,表1の人数のようになった。この人数から相対度数を求め,その累積相対度数を確率とみなして考えてみた。また,到着間隔は一定の範囲をもとに集計しているため,各範囲に対して階級値で考えることにした。
| 到着間隔(秒) | 人数 | 階級値 | 相対度数 | 累積相対度数 |
|---|---|---|---|---|
| 0以上〜30未満 | 6 | 0分 | 0.12 | 0.12 |
| 30以上〜90未満 | 7 | 1分 | 0.14 | 0.26 |
| 90以上〜150未満 | 8 | 2分 | 0.16 | 0.42 |
| 150以上〜210未満 | 11 | 3分 | 0.22 | 0.64 |
| 210以上〜270未満 | 9 | 4分 | 0.18 | 0.82 |
| 270以上〜330未満 | 4 | 5分 | 0.08 | 0.90 |
| 330以上〜390未満 | 2 | 6分 | 0.04 | 0.94 |
| 390以上〜450未満 | 0 | 7分 | 0.00 | 0.94 |
| 450以上〜510未満 | 1 | 8分 | 0.02 | 0.96 |
| 510以上〜570未満 | 2 | 9分 | 0.04 | 1.00 |
| 570以上 | 0 | − | − | − |
そして,表計算ソフトウェアで生成させた乱数(0以上1未満の数値が同じ確率で出現する一様乱数)を用いて試しに最初の10人の到着間隔を,この表1をもとに導き出したところ,次の表2のようになった。ここでの到着間隔は表1の階級値をもとにしている。なお,1人目は到着間隔0分とした。
| 生成させた乱数 | 到着間隔 | |
|---|---|---|
| 1人目 | − | 0分 |
| 2人目 | 0.31 | 2分 |
| 3人目 | 0.66 | 4分 |
| 4人目 | 0.41 | 2分 |
| 5人目 | 0.11 | 0分 |
| 6人目 | 0.63 | 3分 |
| 7人目 | 0.43 | 3分 |
| 8人目 | 0.28 | 2分 |
| 9人目 | 0.55 | 3分 |
| 10人目 | 0.95 | [ケ]分 |
表2の結果から10人の客の待ち状況が分かるように,次の図1のように表してみることにした(図1は6人目まで記入)。ここで,待ち時間とは,並び始めてから直前の人の対応時間が終わるまでの時間であり,対応時間中の客は待っている人数に入れないとする。このとき,最も待ち人数が多いときは[コ]人であり(これを最大待ち人数という),客の中で最も待ち時間が長いのは[サ][シ]分であった。
【図1 シミュレーション結果(作成途中)】横軸が時間(分),縦軸が客(上から1人目〜10人目)の帯グラフ。横軸には0から40まで1分ごとに目盛りの数字がすべて振られ,1分=1マスの方眼になっている。帯はマス目にぴったり合わせて塗られているので,開始と終了の分が目測でなく数えて確定できる。薄い灰色が「対応時間」,濃い灰色が「待ち時間」(凡例あり)。記入済みは6人目まで。1人目は0分から4マス分が対応時間。2人目は2分の位置から2マス分が待ち時間,続いて4マス分が対応時間。3人目は6分の位置から2マス分が待ち時間,続いて4マス分が対応時間。4人目は8分の位置から4マス分が待ち時間,続いて4マス分が対応時間。5人目は8分の位置から8マス分が待ち時間,続いて4マス分が対応時間。6人目は11分の位置から9マス分が待ち時間,続いて4マス分が対応時間。7人目〜10人目の行は空欄(原図は問題冊子PDFを参照)。
2解答
[ケ]=8(配点3点)
[コ]=4(配点3点)
[サ]=1,[シ]=3(=13分。配点3点。すべて正解の場合のみ)
3解説(端的に)
[ケ] 累積相対度数を確率とみなすので,乱数の値が累積相対度数のどの区間に入るかで階級値が決まります。0.95 は 0.94(6分まで/7分まで)と 0.96(8分まで)の間なので,階級値は8分。実際,0.31→0.26と0.42の間→2分,0.11→0.12より小→0分,と表2の他の行もこの規則で説明できます。
[コ][サ][シ] 到着間隔を足して到着時刻を出し,対応時間4分で順番に処理します。到着時刻は 0,2,6,8,8,11,14,16,19,27分。対応は前の人が終わってから始まるので,対応開始は 0,4,8,12,16,20,24,28,32,36分。待ち時間は「対応開始−到着」で 0,2,2,4,8,9,10,12,13,9分。最長は9人目の13分。
待ち人数は,19分から20分の間に6・7・8・9人目の4人が同時に待っており(5人目は対応中なので数えない),これが最大で4人です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
累積相対度数を確率とみなすとはどういうことか。表1の相対度数は,1日目の実績で「到着間隔が0分だったのが12%,1分が14%,…」という割合です。これを「次の客の到着間隔が0分になる確率が0.12,1分になる確率が0.14,…」と読み替えます。
そのうえで,0以上1未満の一様乱数 r を1個引き,数直線の 0〜1 を各階級の確率の幅で区切って,r がどの区間に落ちたかで階級値を決めます。区間の切れ目が,そのまま累積相対度数です。
【数直線のイメージ】0から1までの線を,0.12・0.26・0.42・0.64・0.82・0.90・0.94・0.94・0.96・1.00 の位置で区切る。左から順に0分・1分・2分・3分・4分・5分・6分・7分・8分・9分の区画。7分の区画は0.94から0.94で幅がゼロなので,どんな乱数も落ちない。
待ち時間の定義も問題文どおりに読みます。「並び始めてから直前の人の対応時間が終わるまで」。つまり待ち時間=(自分の対応が始まる時刻)−(自分が到着した時刻)。そして「対応時間中の客は待っている人数に入れない」ので,自分の番が来て調理してもらっている間は,待ち人数のカウントから外れます。
検算 — 別の道すじで確かめる
10人分を表にして,図1の記入済み部分と突き合わせます。到着間隔は 0,2,4,2,0,3,3,2,3,8(10人目は[ケ]=8)。
| 客 | 到着間隔 | 到着時刻 | 対応開始 | 対応終了 | 待ち時間 |
|---|---|---|---|---|---|
| 1人目 | 0分 | 0分 | 0分 | 4分 | 0分 |
| 2人目 | 2分 | 2分 | 4分 | 8分 | 2分 |
| 3人目 | 4分 | 6分 | 8分 | 12分 | 2分 |
| 4人目 | 2分 | 8分 | 12分 | 16分 | 4分 |
| 5人目 | 0分 | 8分 | 16分 | 20分 | 8分 |
| 6人目 | 3分 | 11分 | 20分 | 24分 | 9分 |
| 7人目 | 3分 | 14分 | 24分 | 28分 | 10分 |
| 8人目 | 2分 | 16分 | 28分 | 32分 | 12分 |
| 9人目 | 3分 | 19分 | 32分 | 36分 | 13分 |
| 10人目 | 8分 | 27分 | 36分 | 40分 | 9分 |
1〜6人目の「到着時刻から対応開始まで(待ち)」「対応開始から対応終了まで(対応)」は,図1の記入済みの帯とぴったり一致します。ここが合っていれば,到着時刻の積み上げ方も対応時間の入れ方も正しいと確認できます。10人目の対応終了は40分で,図1の横軸が40分までで用意されていることとも整合します(ただし10人目は前の人を待つ側なので,[ケ]の値が多少変わっても対応終了は36分+4分のままです。40分という数字は[ケ]を決める根拠にはならず,全体が図の中に収まることの確認にとどめます)。
待ち人数の推移を最初から最後まで追う。各客の「待っている区間」は,到着時刻から対応開始時刻までです。1人目は待ちなし,2人目は2〜4分,3人目は6〜8分,4人目は8〜12分,5人目は8〜16分,6人目は11〜20分,7人目は14〜24分,8人目は16〜28分,9人目は19〜32分,10人目は27〜36分。これを時間順に重ね合わせます。
| 時間帯 | 待っている客 | 待ち人数 |
|---|---|---|
| 0〜2分 | なし | 0人 |
| 2〜4分 | 2 | 1人 |
| 4〜6分 | なし | 0人 |
| 6〜8分 | 3 | 1人 |
| 8〜11分 | 4,5 | 2人 |
| 11〜12分 | 4,5,6 | 3人 |
| 12〜14分 | 5,6 | 2人 |
| 14〜16分 | 5,6,7 | 3人 |
| 16〜19分 | 6,7,8 | 3人 |
| 19〜20分 | 6,7,8,9 | 4人 |
| 20〜24分 | 7,8,9 | 3人 |
| 24〜27分 | 8,9 | 2人 |
| 27〜28分 | 8,9,10 | 3人 |
| 28〜32分 | 9,10 | 2人 |
| 32〜36分 | 10 | 1人 |
| 36〜40分 | なし | 0人 |
最大は19〜20分の4人。他に4人以上になる時間帯はありません。11〜12分と14〜16分と16〜19分と27〜28分の3人が次点です。
ありがちな数え違い。19〜20分のとき,5人目は対応してもらっている最中です。これを「並んでいる」と数えて5人としてしまうのが典型的な誤りですが,問題文に「対応時間中の客は待っている人数に入れない」と明記されています。また,待ち時間の最長を「対応が終わるまで」と勘違いすると9人目は13+4=17分になってしまいます。待ち時間は対応が始まるまで,です。
ここで効く一般則・学問的背景
- 到着間隔と到着時刻は別物。間隔は「前の人から何分後か」,時刻は「開店から何分後か」。間隔を積み上げて時刻に直すのが第一歩。
- 1人ずつしか対応できない行列では,対応開始時刻=「自分の到着時刻」と「前の人の対応終了時刻」の遅い方。この1行の規則だけで表全体が埋まる(1人目は前の人がいないので,到着時刻がそのまま対応開始時刻になる)。
- 最大待ち人数と最長待ち時間は別の量で,同じ客で起きるとは限らない。ここでも最長待ち時間は9人目だが,最大待ち人数が出るのは9人目が並び始めた直後の1分間で,5人目が対応中の時間帯である。
- 累積相対度数の表では,相対度数が0.00の階級は幅ゼロの区間になり,決して選ばれない。表1の7分がその例で,どんな乱数を引いても到着間隔7分は出てこない。「表にあるのだから出る可能性がある」と考えないこと。
- 境界の扱いにも注意。r=0.12 ちょうどのように区切りと一致する値は,どちらの階級に入れるかを決めておく必要がある。表2の実例(0.11→0分,0.31→2分など)は,どの決め方でも同じ結果になる値ばかりなので,実際の解答には影響しない。
学問的背景。この設問がやっているのは,逆関数法(逆変換法)と呼ばれる確率分布に従う乱数の作り方です。0以上1未満の一様乱数を,累積分布関数の逆をたどって目的の分布に変換する——累積相対度数の表を数直線に見立てて乱数を落とす操作は,まさにこの原理そのものです。表計算ソフトの一様乱数さえあれば,どんな分布の現象でも模擬できるので,シミュレーションの基本技法として広く使われます。さらに,乱数を使って何度も試行し結果の分布を調べる方法をモンテカルロ法といい,1940年代のロスアラモス研究所で中性子の拡散計算のために考案されました。「1人ずつしか対応できない窓口に客が次々来る」という状況を数学的に扱う分野は待ち行列理論と呼ばれ,1900年代初頭にデンマークの電話技師アーランが電話交換機の回線数設計のために創始したものです。レジの台数,コールセンターの人員,サーバの処理能力の設計まで,今も現場で使われています。情報Ⅱのモデル化とシミュレーションでは,こうした確率的モデルを自分で組み立てる場面が出てきます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
B問2 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 B 問2
1問題
問2 図1の結果は,客が10人のときであったので,Mさんは,もっと多くの客が来た場合の待ち状況がどのようになるか知りたいと考えた。そこでMさんは,客が10人,20人,30人,40人来客した場合のシミュレーションをそれぞれ100回ずつ行ってみた。次の図2は,それぞれ100回のシミュレーションでの最大待ち人数の頻度を表したものである。
【図2 シミュレーション結果】ヒストグラムが4つ(2行2列)。どれも横軸が「最大待ち人数」で目盛りラベルは 0・5・10・15・20・25,縦軸が「回数」で目盛りラベルは 0・5・10・15・20・25・30。4つとも軸の範囲は同じ。
・来客人数10人:棒は目盛り0の右すぐから始まる狭い範囲だけに集まる。左端の1本は低く,その右隣で急に高くなって,飛び抜けて高い2本(どちらも目盛り25と30の間まで届く)が目盛り0と5の中間をはさんで左右に並ぶ。そこから右へは順に低くなり,最も右の棒は目盛り5より右側にある(5と10の間で,5のすぐ隣)。目盛り10より右には棒がまったくない。
・来客人数20人:山の頂点は目盛り5のところ。分布の左端は目盛り0と5の間,右端はちょうど目盛り10のところで,10より右には棒がない。
・来客人数30人:最も高い1本は目盛り5と10の中間のすぐ右にある。左端は目盛り0と5の間,右端は目盛り15より左側。10人・20人のグラフより山の裾が横に広く,頂点は低い。
・来客人数40人:山の頂点は目盛り10のところ。左端は目盛り0と5の間,右端は目盛り20より左側(15と20の間に離れた低い棒が1本ある)。4つの中で最も裾が広く,頂点が最も低い。
4つを並べると,山の位置は左から右へ順に移動し,裾の広がりも順に大きくなる(原図は問題冊子PDFを参照)。
この例の場合において,シミュレーション結果から読み取れないことを次の⓪〜③のうちから一つ選べ。[ス]
⓪ 来客人数が多くなるほど,最大待ち人数が多くなる傾向がある。
① 最大待ち人数の分布は,来客人数の半数以下に収まっている。
② 最大待ち人数は,来客人数の 1/4 前後の人数の頻度が高くなっている。
③ 来客人数が多くなるほど,最大待ち人数の散らばりが大きくなっている。
2解答
[ス]=①(配点3点)
3解説(端的に)
問われているのは「グラフから読み取れないこと」,つまりグラフと合わない記述です。
①は「最大待ち人数は来客人数の半分以下に収まっている」。来客10人なら半数は5人です。ところが来客人数10人のグラフでは,最も右の棒が目盛り5より右にあります。つまり最大待ち人数が5人を超えた回が実際に存在します。だから①はグラフと合いません。
他の3つは合います。⓪は山の位置が10人→20人→30人→40人と順に右へ動くこと,③は裾の広がりが順に大きくなること,②は各グラフの山の頂点が 10人→目盛り0と5の中間をはさむ2本,20人→目盛り5,30人→目盛り5と10の中間のすぐ右,40人→目盛り10 と,どれも来客人数の 1/4(2.5・5・7.5・10)のすぐ近くに来ていることから読み取れます。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
ヒストグラムの読み方は3点セットで見ます。(i) 山の位置(どのあたりが多いか=中心),(ii) 裾の広がり(左端から右端までの幅=散らばり),(iii) 端(いちばん右/左の棒はどこか=極端な値)。①は(iii)を,⓪と②は(i)を,③は(ii)を問う選択肢です。何を見ればよいかを最初に仕分けると速くなります。
「〜以下に収まっている」は全部について言う主張です。100回×4条件のすべてで成り立って初めて正しくなります。逆に言えば,1つでもはみ出す棒を見つければ否定できます。「すべて」を主張する文は,反例1つで崩れる——これはヒストグラムに限らず使える読み方です。
4つのグラフの軸がそろっていることも重要です。横軸・縦軸の範囲が4つとも同じなので,並べて比べれば位置と広がりの変化がそのまま見えます。軸がバラバラのグラフを比べてはいけない,という基本の裏返しです。
検算 — 別の道すじで確かめる
①を4つのグラフすべてで確かめる。「来客人数の半数」は,10人なら5,20人なら10,30人なら15,40人なら20です。
来客20人:右端は目盛り10のところ。10以下なので収まる。
来客30人:右端は目盛り15より左。15以下なので収まる。
来客40人:右端は目盛り20より左。20以下なので収まる。
来客10人:右端は目盛り5より右。5を超えているので収まらない。
つまり①がくずれるのは来客10人のグラフただ1つ。それでも「収まっている」という主張は成り立ちません。
⓪を確かめる。山の頂点の位置は,10人が目盛り0と5の中間付近,20人が目盛り5,30人が目盛り5と10の中間のすぐ右,40人が目盛り10。来客人数が増えるにつれて右へ移動しています。裾の右端も 5より右→10→15より左→20より左 と右へ動いています。「多くなる傾向」は読み取れます。
②を確かめる。1/4 は 10人→2.5,20人→5,30人→7.5,40人→10。これを山の頂点の位置と並べます。10人は飛び抜けて高い2本が目盛り0と5の中間をはさんで左右に並んでおり,2.5はちょうどその2本の間。20人の頂点は目盛り5ちょうど。30人の最も高い1本は目盛り5と10の中間のすぐ右で,7.5のすぐ隣。40人の頂点は目盛り10ちょうど。どれも 1/4 の値のごく近くにあり,②の言う「1/4 前後」は読み取れます(②は「前後」と書いているので,頂点が 1/4 の値ちょうどの位置にある必要はありません)。
③を確かめる。棒が立っている範囲の幅を比べます。10人は目盛り0のすぐ右から5より少し右まで。20人は0と5の間から10まで。30人は0と5の間から15より左まで。40人は0と5の間から20より左まで。左端はどれもあまり変わらないのに右端が伸びていくので,幅は順に広がっています。同時に,頂点の高さは10人が最も高く40人が最も低い——同じ100回を広い範囲に分け合うほど各棒は低くなるので,これも散らばりが大きくなっていることの裏づけです。読み取れます。
誤答をたどる。①を「正しい」と判断してしまうのは,40人のグラフだけを見て「20より左に収まっているから大丈夫」と結論する読み方です。この読み方を10人のグラフに適用すると,半数の5を超える棒があることに気づけます。4条件すべてに当てはめる,という手順を踏めば①にたどり着きます。
ここで効く一般則・学問的背景
- 「読み取れないもの」を選ぶ問題では,残り3つが読み取れることを積極的に確かめる方が速いことが多い。消去法が有効。
- 「すべて」「必ず」「以下に収まる」型の主張は,反例1つで否定できる。逆に肯定するには全部を確かめる必要がある。否定の方が圧倒的に手間が少ない。
- 複数のヒストグラムを比べるときは,軸の範囲がそろっているかを最初に確認する。そろっていれば,山の位置・幅・高さの変化をそのまま比較してよい。
- ただし「棒が低いから散らばりが大きい」と単独では言えない。合計回数が4つとも100回でそろっているからこそ,「頂点が低い=広い範囲に散っている」と言える。度数の合計が違うグラフどうしでは,この読み方は使えない。
学問的背景。1回のシミュレーション結果は乱数しだいで変わります。だから1回だけ走らせても意味がなく,同じ条件で100回繰り返して結果の分布を見る——これがモンテカルロ法の基本姿勢です。得られたヒストグラムは「最大待ち人数」という確率変数の分布を近似したもので,そこから中心(平均・最頻値)と散らばり(範囲・標準偏差)を読み取ります。ここで見えている「来客人数が増えるほど最大待ち人数の中心も散らばりも大きくなる」という現象は,対応時間が平均到着間隔を上回っているために行列が平均的に伸びていく状態にあることの現れです(次の問3で詳しく扱います)。データの分布を要約して比べるという技法は情報Ⅰの「データの活用」そのもので,情報Ⅱのデータサイエンスでは,こうした分布の比較に検定や信頼区間といった道具が加わります。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
B問3 令和7年度 共通テスト『情報Ⅰ』試作問題 第2問 B 問3
1問題
問3 1日目の午前中の来客人数は39人で,記録によれば一番長く列ができたときで10人の待ちがあったことから,Mさんは,図2の「来客人数40人」の結果が1日目の午前中の状況をおおよそ再現していると考えた。そこで,調理の手順を見直すことで一人の客への対応時間を4分から3分に短縮できたら,図2の「来客人数40人」の結果がどのように変化するか同じ乱数列を用いて試してみた。その結果を表すグラフとして最も適当なものを,次の⓪〜③のうちから一つ選べ。[セ]
【⓪〜③のグラフ】4つともヒストグラムで,横軸が「最大待ち人数」(目盛りラベル 0・5・10・15・20・25),縦軸が「回数」(目盛りラベル 0・5・10・15・20・25・30)。4つとも軸の範囲は図2と同じ。
・⓪:山の頂点は目盛り0と5の間(5のすぐ左)にあり,図2の40人(頂点が目盛り10)よりはっきり左にある。左端は目盛り0と5の間,右端は目盛り10のすぐ右まで。分布全体が左に寄り,幅も図2の40人より狭い。
・①:山の頂点は目盛り5と10の間。左端は目盛り0と5の間,右端は目盛り20の手前まで届く。位置も広がりも図2の40人と大きくは変わらない。
・②:はっきりした山がなく,低い棒が目盛り0の少し右から始まって目盛り15を越えてもなお続く。右へ行くほど棒はまばらに低くなり,いったん途切れたあと,目盛り20をまたいで低い棒が現れて終わる。したがって右端は目盛り20より右側にあり,図2の「来客人数40人」の右端(目盛り15と20の間の離れた1本)よりさらに外側まで伸びている。全体として図2の40人より散らばりが大きい。
・③:頂点は目盛り10のところにあり,4つの中で飛び抜けて高い(目盛り25と30の間まで届く)。棒が立っているのは目盛り5と15の間の狭い範囲だけ。中心は図2の40人と同じまま,散らばりだけが小さい(原図は問題冊子PDFを参照)。
2解答
[セ]=⓪(配点3点)
3解説(端的に)
同じ乱数列を使うので,客が来るタイミングはまったく同じです。変わるのは1人にかかる時間が4分から3分になることだけ。対応開始時刻は「自分の到着時刻」と「前の人の対応終了時刻」の遅い方で決まるので,先頭から順に見ていくと,前の人の終了が早まる(か同じ)なら自分の開始も早まる(か同じ)——結局どの客の対応開始も,対応4分のときより早いか同じで,遅くなる客は1人もいません。待ち時間は「対応開始−到着」ですから,どの客の待ち時間も短くなるか同じ。するとどの時刻をとっても待っている人数は増えず,最大待ち人数は小さい方へ動くはずです。
さらに,表1から平均の到着間隔を計算すると,0×0.12+1×0.14+2×0.16+3×0.22+4×0.18+5×0.08+6×0.04+7×0.00+8×0.02+9×0.04=3.00分。対応4分は到着ペース3分より遅いので平均的には列が伸びていきますが,3分にすると到着ペースと釣り合い,列が積み上がりにくくなります。
グラフの中心が図2の40人よりはっきり左へ動いているのは⓪だけです。①は位置も広がりも大きく変わらず,②は逆に広がり,③は中心が動かず幅だけ狭くなっており,いずれも「短縮した効果」を表していません。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
「同じ乱数列を用いて」という一言が効いています。乱数列が同じなら,到着間隔の並びも到着時刻も1日目とまったく同じ。変えた条件は対応時間だけです。こうすると「結果の違いはすべて対応時間の変更のせい」と言い切れます。実験で条件を1つだけ変えるのと同じ考え方で,シミュレーションでは共通乱数法と呼ばれます。
平均到着間隔の求め方も道具です。階級値×相対度数を全階級について足せば,到着間隔の平均が出ます。表1の値だけで計算でき,答えは3.00分ちょうどです。
そして「さばくペース」と「来るペース」の比べ方。1人に4分かかるなら1時間に15人しかさばけません。客は平均3分に1人=1時間に20人来ます。20人来て15人しかさばけないので,1時間あたり5人ずつ列が伸びていきます。対応3分なら1時間に20人さばけるので,来る数と釣り合います。この「ペースの比較」がこの問題の心臓部です。
検算 — 別の道すじで確かめる
問1の10人のデータで,対応時間だけを4分から3分に変えて最後まで計算してみます。到着時刻は同じ 0,2,6,8,8,11,14,16,19,27分。
| 客 | 到着時刻 | 対応4分のとき | 対応3分のとき | ||
|---|---|---|---|---|---|
| 対応開始 | 待ち時間 | 対応開始 | 待ち時間 | ||
| 1人目 | 0分 | 0分 | 0分 | 0分 | 0分 |
| 2人目 | 2分 | 4分 | 2分 | 3分 | 1分 |
| 3人目 | 6分 | 8分 | 2分 | 6分 | 0分 |
| 4人目 | 8分 | 12分 | 4分 | 9分 | 1分 |
| 5人目 | 8分 | 16分 | 8分 | 12分 | 4分 |
| 6人目 | 11分 | 20分 | 9分 | 15分 | 4分 |
| 7人目 | 14分 | 24分 | 10分 | 18分 | 4分 |
| 8人目 | 16分 | 28分 | 12分 | 21分 | 5分 |
| 9人目 | 19分 | 32分 | 13分 | 24分 | 5分 |
| 10人目 | 27分 | 36分 | 9分 | 27分 | 0分 |
対応開始が1人目から順に 0・1・2・3・4・5・6・7・8・9分ずつ前倒しになり,待ち時間の短縮幅も同じく 0・1・2・3・4・5・6・7・8・9分。この10人の並びに限れば後ろの客ほど短縮幅が大きくなっています(待ち時間そのものが後ろほど短いという意味ではありません。対応3分でも待ち時間が最も長いのは8人目・9人目の5分です)。ただし,前倒しが1人ごとに1分ずつ積み上がるのは,窓口が一度も空かない区間の中だけの話です。この10人は,前の人の対応が終わる時刻に次の人がもう並んでいる(または同時刻に到着する)状態が最後まで続くので積み上がりますが,途中で行列が途切れて窓口が空く瞬間があれば,その次の客の対応開始は自分の到着時刻そのものになり,積み上がった前倒し量はそこでリセットされます(その客の短縮幅は前の客より小さくなり得ます)。問3が対象にしている来客40人・対応3分は平均到着間隔とちょうど釣り合う設定なので,この途切れは繰り返し起こり,「最後の客は39分前倒し」のようにはなりません。それでも「どの客の対応開始も早いか同じ」という向きは変わらないので,結論(待ち人数は増えない)は保たれます。最長待ち時間は13分から5分へ。最大待ち人数も数え直すと,対応3分では8〜9分・11〜12分・14〜15分・16〜18分・19〜21分の各時間帯で2人が並ぶのが最大で,4人から2人へ減ります。中心が小さい方へ動く,という向きが実際の計算で確かめられました。
①を選ぶ誤読をたどる。「同じ乱数列を使ったのだから結果もほとんど同じはず」と考えると①になります。しかし同じなのは到着のタイミングだけで,対応時間は変えています。対応開始は「自分の到着時刻」と「前の人の対応終了時刻」の遅い方で決まるので,先頭からたどれば,同じ到着時刻でも待ち時間はどの客も短くなるか同じかのどちらかで,長くなる客は1人もいません(上の表はその一例)。「ほとんど同じ」にはなりません。
②を選ぶ誤読をたどる。「速くなると混み具合のばらつきが大きくなる」と考えると②になります。しかし②の右端は目盛り20より右まで伸びていて,図2の40人の右端(目盛り15と20の間の1本)よりさらに外側です。つまり,対応時間を短縮したのに,短縮する前には出ていなかった大きな最大待ち人数が出たことになります。ところが,到着時刻をそのままに対応時間だけを縮めれば,どの客の対応開始も早いか同じ,したがって待ち時間も短いか同じで,長くなることはありません(上の表はその一例で,40人でも理由は同じです)。右端が外へ伸びるのは矛盾です。
③を選ぶ誤読をたどる。「改善したのだから結果が安定する=ばらつきが小さくなる」と考えると③になります。しかし③の頂点は目盛り10のところ,つまり図2の40人の頂点と同じ位置のままです。これは「最大待ち人数はやはり10人前後だが,どの回もほぼ10人になった」という意味で,待ちが減ったことになりません。改善の効果は「ばらつきが減る」ではなく,まず「値そのものが小さくなる」として現れるはずです。
⓪が生き残ることの確認。⓪は頂点が目盛り0と5の間(5のすぐ左)で,図2の40人(頂点が目盛り10)より明らかに左。右端も目盛り10のすぐ右までで,図2の40人(目盛り20より左まで)より内側に収まっています。中心が小さい方へ動き,散らばりも小さくなる——上の手計算(最長13分→5分,最大待ち人数4人→2人)と同じ向きです。
ここで効く一般則・学問的背景
- 条件を1つだけ変えて比べるときは,乱数列をそろえる。そうしないと「変えた条件のせいなのか,たまたまなのか」が区別できない。
- 1人ずつ対応する窓口では,「平均対応時間」と「平均到着間隔」の大小が行列のふるまいを決める。対応時間の方が長ければ列は平均的に伸び続け,短ければ列の長さは落ち着いていく。この設問は,4分(>3分)から3分(=3分)へ,ちょうど境目まで改善した例になっている。
- グラフを選ぶ問題では「中心はどちらへ動くか」「広がりはどうなるか」を先に予想してから選択肢を見る。先に予想を立てないと,見た目の印象で選んでしまう。
- ただし「対応時間を短くすれば待ち時間は必ず0になる」わけではない。上の表でも8人目・9人目には5分の待ちが残る。到着が集中した瞬間には,どんなに速くても行列はできる。改善で減るのは,行列が積み上がって伸び続ける分である。
学問的背景。待ち行列理論では,客が来るペース(到着率)とさばくペース(サービス率)の比を利用率と呼びます。この例では到着率が1分あたり 1/3 人,サービス率は対応4分なら 1/4 人なので利用率は 4/3。1を超えると理論上は行列が無限に伸びます。対応を3分にすると利用率はちょうど1で,境目にあたります。さらに短縮して利用率が1を下回れば,行列の長さは平均的に一定の値に落ち着きます。「利用率が1に近づくほど待ち時間が急激に伸びる」という性質は,レジの台数設計,通信回線の帯域設計,サーバの負荷設計に共通して現れる重要な知見で,稼働率を100%近くまで上げようとすると待ち時間が爆発するため,あえて余裕を残す設計が選ばれます。情報Ⅱのモデル化とシミュレーションでは,このような確率モデルを立てて,パラメータを変えながら政策や設計を比較検討する手法を学びます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
問1 令和7年度 共通テスト『情報Ⅰ』試作問題 第3問 問1
1問題
次の生徒(S)と先生(T)の会話文を読み,空欄[ア]に当てはまる数字をマークせよ。また,空欄[イ]〜[エ]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。ただし,空欄[ウ]・[エ]は解答の順序は問わない。
S:この前,お客さんが460円の商品を買うのに,510円を払って,釣り銭を50円受け取っていたのを見て,授業で勉強したプログラミングで,そんな「上手な払い方」を計算するプログラムを作ってみたいと思いました。
T:いいですね。まず,「上手な払い方」とは何かを考える必要がありますね。
S:普通は手持ちの硬貨の枚数を少なくするような払い方でしょうか。
T:そうですね。ただ,ここでは,客が支払う枚数と釣り銭を受け取る枚数の合計を最小にする払い方を考えてみませんか? 客も店も十分な枚数の硬貨を持っていると仮定しましょう。また,計算を簡単にするために,100円以下の買い物とし,使う硬貨は1円玉,5円玉,10円玉,50円玉,100円玉のみで500円玉は使わない場合を考えてみましょう。例えば,46円をちょうど支払う場合,支払う枚数はどうなりますか?
S:46円を支払うには,10円玉4枚,5円玉1枚,1円玉1枚という6枚で払い方が最小の枚数になります。
T:そうですね。一方,同じ46円を支払うのに,51円を支払って釣り銭5円を受け取る払い方では,支払いに2枚,釣り銭に1枚で,合計3枚の硬貨のやり取りになります。こうすると交換する硬貨の枚数の合計が最小になりますね。
S:これが上手な払い方ですね。
T:そうです。このように,客と店が交換する硬貨の合計が最小となる枚数,すなわち「最小交換硬貨枚数」の計算を考えましょう。
S:どうやって考えればいいかなぁ。
T:ここでは,次の関数のプログラムを作り,それを使う方法を考えてみましょう。目標の金額を釣り銭無くちょうど支払うために必要な最小の硬貨枚数を求める関数です。
【関数の説明と例】
例:8円は「5円玉が1枚と1円玉が3枚」の組合せで最小の硬貨枚数になるので,枚数(8) の値は 4 となる。
T:これは,例えば,枚数(46) =[ア]と計算してくれるような関数です。これを使って最小交換硬貨枚数の計算を考えてみましょう。例えば,46円支払うのに,51円払って5円の釣り銭を受け取る払い方をした場合,客と店の間で交換される硬貨枚数の合計は,この関数を使うと,どのように計算できますか?
S:[イ]で求められますね。
T:一般に,商品の価格 x 円に対して釣り銭 y 円を 0, 1, 2, … と変化させて,それぞれの場合に必要な硬貨の枚数の合計を
枚数([ウ])+枚数([エ])
と計算し,一番小さな値を最小交換硬貨枚数とすればよいのです。
S:なるほど。それで,釣り銭 y はいくらまで調べればよいでしょうか?
T:面白い数学パズルですね。まあ,詳しくは今度考えるとして,今回は100円以下の商品なので y は99まで調べれば十分でしょう。
[イ]の解答群
⓪ 枚数(51) + 枚数(5) ① 枚数(46) + 枚数(5) ② 枚数(51) - 枚数(5) ③ 枚数(46) - 枚数(5)
[ウ]・[エ]の解答群
⓪ x ① y ② x + y ③ x - y
2解答
[ア]=6(配点1点)
[イ]=⓪(配点1点)
[ウ]・[エ]=②・①(順序は問わない。両方正解で3点)
3解説(端的に)
この問題で言う「上手な払い方」は,客が渡す硬貨の枚数と店が返す硬貨の枚数の合計が最小になる払い方です。片方だけを小さくするのではありません。
[ア]は会話文の中でSさん自身が答えています。46円は10円玉4枚+5円玉1枚+1円玉1枚の6枚。
[イ]は「51円払って5円のお釣り」の場合。渡す硬貨が 枚数(51)=2枚(50円玉1枚と1円玉1枚),返ってくる硬貨が 枚数(5)=1枚。行きと帰りの両方を数えるので足し算で,枚数(51)+枚数(5)=3。先生の言う「合計3枚」と一致します。
[ウ][エ]はこれを文字に置き換えるだけです。価格 x 円の商品に釣り銭 y 円を受け取るなら,客が渡す金額は x+y 円,店が返す金額は y 円。よって 枚数(x+y)+枚数(y) です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
関数(function)とは,「材料を渡すと結果を返してくれる箱」です。渡す材料を引数(ひきすう),返ってくる結果を戻り値(もどりち)と呼びます。ここでは 枚数(金額) という箱に金額を入れると,その金額をちょうど作る最小の硬貨枚数が返ってきます。
大事なのは,この段階では箱の中身を知らなくてよいということです。中身の作り方は問2で考えます。問1では「渡すと返ってくる」という約束だけを使って設計を進めます。これがプログラミングで最も強力な考え方の一つ,抽象化です。
もう一つの道具が,日本語の問題設定を式に翻訳する力です。「客が支払う金額」「店が返す金額」を x,y でどう書くか。ここを丁寧にやるだけで正解できます。
検算 — 別の道すじで確かめる
[ウ][エ]に具体値を戻す。 x=46,y=5 を 枚数(x+y)+枚数(y) に入れると 枚数(51)+枚数(5)。[イ]の正解とぴったり同じ式になります。文字式が正しいかは,必ず具体例に戻して確かめてください。
境界(y=0)で確かめる。 釣り銭が0円,つまり「ちょうど払う」場合は 枚数(x+0)+枚数(0)=枚数(x)+0=枚数(x)。「ちょうど払うときの枚数」に一致します。式が特別扱いなしで両方に対応していることが分かります。
[イ]の誤答を最後まで計算する。 正解は3枚でなければなりません。
- ① 枚数(46)+枚数(5)=6+1=7。これは「46円ちょうど払ったうえに,さらに5円もらう」という現実に無い状況の計算です。
- ② 枚数(51)-枚数(5)=2-1=1。「お釣りは戻ってくるから引く」という誤読ですが,釣り銭も硬貨のやり取りなので数え上げる対象です。
- ③ 枚数(46)-枚数(5)=6-1=5。上の二つの誤読の組合せ。
いずれも3になりません。3になるのは⓪だけです。
[ウ][エ]の誤答を確かめる。 ⓪の x を選んで 枚数(x)+枚数(y) とすると,x=46,y=5 で 6+1=7。実際に手渡すのは51円なので誤り。③の x-y を選ぶと 枚数(41)+枚数(5)=5+1=6。41円は誰も払っていない金額です。
ここで効く一般則・学問的背景
- 「交換される硬貨」は往復の両方を数える。 客→店(支払い)と店→客(釣り銭)の合計。だから式は足し算になります。
- 支払額=価格+釣り銭。 お釣りが出るということは,価格より多く払ったということ。その「多く払った分」がそのまま釣り銭です。この一般則を[ウ][エ]の4択すべてに当てはめると,x+y(=支払額)と y(=釣り銭)の組だけが残り,正解と一致します。
- 「合計が最小」と「それぞれが最小」は別物。 支払う枚数を減らそうとすると釣り銭の枚数が増えやすく,逆もまた然りです。両方を同時に最小にできるとは限りません。だからこの問題は「両方とも最小」ではなく「合計が最小」と言っています。46円の例でも,支払い枚数だけを見れば51円払い(2枚)より50円払い(1枚)のほうが少ないのに,釣り銭が4円=4枚になるので合計は5枚となり,51円払いの3枚に負けます。
- まず「使う道具」を決めてから中身を作る。 先生は 枚数(金額) という関数を先に用意し,その上で最小交換硬貨枚数の式を組み立てました。難しい問題を「小さな部品」と「部品の組み立て方」に分ける,この順序がアルゴリズム設計の基本です。
学問的背景。 この問題は,計算機科学で「硬貨問題(coin change problem)」と呼ばれる古典的な題材です。「ある金額をちょうど作る最小の硬貨枚数」を求める問題で,動的計画法という手法の入門例として世界中の教科書に載っています。ここではさらに「釣り銭も含めた往復の枚数」という日本の買い物の実感に寄せた形に拡張されています。なお,先生が最後に「面白い数学パズルですね」と流した「釣り銭はいくらまで調べればよいか」という問いは,探索範囲の上限を数学的に見積もる問題で,実は簡単ではありません。試作問題ではこれを「100円以下の商品なので99まで」と実用的に切り上げています。解ける形に問題を切り詰めるのも設計の一部だ,というメッセージです。情報Ⅱでは,こうした最適化問題をモデル化して解く方法をさらに詳しく扱います。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
問2 令和7年度 共通テスト『情報Ⅰ』試作問題 第3問 問2
1問題
次の文章の空欄[オ]〜[コ]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。
S:まずは,関数「枚数(金額)」のプログラムを作るために,与えられた金額ちょうどになる最小の硬貨枚数を計算するプログラムを考えてみます。もう少しヒントが欲しいなぁ。
T:金額に対して,高額の硬貨から使うように考えて枚数と残金を計算していくとよいでしょう。また,金額に対して,ある額の硬貨が何枚まで使えて,残金がいくらになるかを計算するには,整数値の商を求める演算『÷』とその余りを求める演算『%』が使えるでしょう。例えば,46円に対して10円玉が何枚まで使えるかは[オ]で,その際にいくら残るかは[カ]で求めることができますね。
S:なるほど!あとは自分でできそうです。
Sさんは,先生(T)との会話からヒントを得て,変数 kingaku に与えられた目標の金額(100円以下)に対し,その金額ちょうどになる最小の硬貨枚数を計算するプログラムを考えてみた(図1)。ここでは例として目標の金額を46円としている。
配列 Kouka に硬貨の額を低い順に設定している。なお,配列の添字は 0 から始まるものとする。最低額の硬貨が1円玉なので Kouka[0] の値は 1 となる。
先生(T)のヒントに従い,高額の硬貨から何枚まで使えるかを計算する方針で,(4)〜(6)行目のような繰返し文にした。この繰返しで,変数 maisu に支払いに使う硬貨の枚数の合計が計算され,変数 nokori に残りいくら支払えばよいか,という残金が計算される。
実行してみると[ア]が表示されたので,正しく計算できていることが分かる。いろいろな例で試してみたが,すべて正しく計算できていることを確認できた。
(2) kingaku = 46
(3) maisu = 0, nokori = kingaku
(4) i を [キ] ながら繰り返す:
(5) │ maisu = [ク] + [ケ]
(6) └ nokori = [コ]
(7) 表示する(maisu)
図1 目標の金額ちょうどになる最小の硬貨枚数を計算するプログラム
[オ]・[カ]の解答群
⓪ 46 ÷ 10 + 1 ① 46 % 10 - 1 ② 46 ÷ 10 ③ 46 % 10
[キ]の解答群
⓪ 5 から 1 まで 1 ずつ減らし ① 4 から 0 まで 1 ずつ減らし ② 0 から 4 まで 1 ずつ増やし ③ 1 から 5 まで 1 ずつ増やし
[ク]の解答群
⓪ 1 ① maisu ② i ③ nokori
[ケ]・[コ]の解答群
⓪ nokori ÷ Kouka[i] ① nokori % Kouka[i] ② maisu ÷ Kouka[i] ③ maisu % Kouka[i]
2解答
[オ]=②(配点1点)
[カ]=③(配点1点)
[キ]=①(配点1点)
[ク]=①(配点2点)
[ケ]=⓪(配点2点)
[コ]=①(配点2点)
3解説(端的に)
方針は「高額の硬貨から順に,使えるだけ使う」。各段階でやることは2つだけです。何枚使えるか(=商 ÷)と,いくら残るか(=余り %)。
[オ]は枚数を聞かれているので 46 ÷ 10 = 4。[カ]は残額なので 46 % 10 = 6。
配列 Kouka=[1,5,10,50,100] は添字が0から始まる(問題文にそう断ってあります)ので,1円玉が Kouka[0],100円玉が Kouka[4]。高額から使うには添字を 4 → 0 へ減らします([キ]=①)。
繰返しの中身は,使った枚数を足し込む maisu = maisu + nokori ÷ Kouka[i]([ク]=maisu,[ケ]=nokori ÷ Kouka[i])と,残額を更新する nokori = nokori % Kouka[i]([コ])。[ク]に maisu 自身を入れるのがポイントで,これが「前回までの合計に今回分を足す」という累算の形です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
整数の商 ÷ と 余り %。 46 ÷ 10 = 4,46 % 10 = 6 です。小学校の「46 わる 10 は 4 あまり 6」がそのまま2つの演算子に分かれたと思ってください。ここで大事なのは単位(量の型)が違うことです。商の 4 は枚,余りの 6 は円。「何枚使えるか」を聞かれたら ÷,「いくら残るか」を聞かれたら % と,日本語から機械的に決められます。
配列と添字。 配列は「番号のついた箱の列」です。この問題では添字が0から始まると問題文が明記しています。これは問題ごとの取り決めであって,どの問題でも0始まりとは限りません。毎回,断り書きを読んで確かめる習慣をつけてください。Kouka は要素が5個なので,添字は 0,1,2,3,4 の5通り。5 や -1 は存在しません。
累算変数(るいさんへんすう)。 maisu = maisu + 何か という形は「いまの maisu に何かを足して,改めて maisu に入れ直す」という意味です。数学の等式ではなく「代入」なので,左辺と右辺に同じ名前が出てきて構いません。合計を作るときの定番の型です。
検算 — 別の道すじで確かめる
正解の組合せで最後までトレースする。 kingaku=46,はじめ maisu=0,nokori=46。
| i | Kouka[i] | 直前の nokori | 加える枚数 nokori ÷ Kouka[i] | 更新後 maisu | 更新後 nokori nokori % Kouka[i] |
|---|---|---|---|---|---|
| 4 | 100 | 46 | 0 | 0 | 46 |
| 3 | 50 | 46 | 0 | 0 | 46 |
| 2 | 10 | 46 | 4 | 4 | 6 |
| 1 | 5 | 6 | 1 | 5 | 1 |
| 0 | 1 | 1 | 1 | 6 | 0 |
表示されるのは 6。問題文の「実行してみると[ア]が表示された」と一致します。最後に nokori が 0 になることも,きちんと払い切れた証拠です。
誤答を最後まで追う。
- [キ]⓪「5から1まで」と③「1から5まで」は,どちらも i=5 のときに Kouka[5] を読もうとします。Kouka の添字は 0〜4 しかないので,存在しない箱を開けることになります。
- [キ]②「0から4まで1ずつ増やし」は範囲内ですが,低額の硬貨から使ってしまいます。トレースすると,i=0 で maisu = 0 + 46 ÷ 1 = 46,nokori = 46 % 1 = 0。以降は何も足されず,表示は 46。1円玉46枚で払う計算になっており,6 になりません。
- [ク]⓪ の 1 を入れると,毎回 maisu が「1 + 今回の枚数」で上書きされ,前回までの合計が消えます。最後まで追うと表示は 2。② の i でも 1,③ の nokori でも 2 になり,いずれも6になりません。合計を作るには自分自身を足す形が要る,ということです。
- [ケ]① の nokori % Kouka[i] は「残額」であって枚数ではありません。② ③ は maisu(枚数)を硬貨の額で割っており,枚数を額で割るという意味の通らない計算です。
- [コ]⓪ の nokori ÷ Kouka[i] を入れると,残金の欄に枚数が入ってしまいます。i=4 の時点で nokori = 46 ÷ 100 = 0 となり,以降ずっと 0。表示は 0 です。② ③ は[ケ]のときと同じ理由(枚数 maisu を硬貨の額で割っている)で残金にもなりません。これで[ケ]・[コ]の共通解答群 ⓪〜③ を出し切りました。
[オ][カ]の誤答。 ⓪ の「46 ÷ 10 + 1」=5 は,10円玉5枚=50円で46円を超えてしまいます。+1 は不要です。① の「46 % 10 - 1」=5 は,枚数でも残額でもない数です。
ここで効く一般則・学問的背景
- 「何個」は商,「いくつ余る」は余り。 求められている量の単位を見れば演算子は決まります。
- 添字の範囲は「0 から 要素数-1 まで」(この問題の断り書きの場合)。 Kouka は5要素なので 0〜4。この基準を[キ]の4択に当てはめると,5 を含む ⓪ と ③ が消え,範囲内の ① と ② が残ります。そこから「高額から」という方針で ① に決まります。正解が生き残ることを確認できました。
- 合計を作るときは,変数に自分自身を足す。
合計 = 合計 + 今回分。初期値を 0 にしておくのとセットです。 - 「高額から使えるだけ使う」を貪欲法(グリーディ法)という。 目先で最も得に見える選択を,後戻りせずに繰り返す方法です。ただしこれが常に最小になるとは限りません。仮に 1 円・3 円・4 円の3種類の硬貨しかない世界を考えると,6 円を作るのに貪欲法は 4+1+1 の3枚を選びますが,本当の最小は 3+3 の2枚です。日本の 1・5・10・50・100 という硬貨体系では,たまたま貪欲法が必ず最小を与えることが知られており,だからこのプログラムは正しく動きます。手法が正しいかどうかは,データの性質に依存するということです。
学問的背景。 貪欲法が最小を与えるような硬貨の体系を,計算機科学では「canonical(正準)な硬貨体系」と呼びます。日本の硬貨も,米ドルの1・5・10・25セントも canonical ですが,そうでない体系はいくらでも作れます。ある硬貨体系が canonical かどうかを判定するアルゴリズムが知られたのは2005年で,意外に新しい研究です。canonical でない体系でも最小枚数を確実に求めるには,金額を1円から順に積み上げて表を埋めていく動的計画法を使います。情報Ⅱでは,こうした「どのアルゴリズムがどんな条件下で正しいか」「計算にどれだけ時間がかかるか」を扱います。なお,この問題は「100円以下の買い物とし,500円玉は使わない」と条件を明示することで,考える範囲をあらかじめ狭めています。条件を絞ってから解く,という進め方そのものが解答の手がかりになっています。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
問3 令和7年度 共通テスト『情報Ⅰ』試作問題 第3問 問3
1問題
次の文章を参考に,図2のプログラムの空欄[サ]〜[タ]に入れるのに最も適当なものを,後の解答群のうちから一つずつ選べ。ただし,空欄[ス]・[セ]は解答の順序は問わない。
T:プログラム(図1)ができたようですね。それを使えば,関数「枚数(金額)」のプログラムができます。関数の引数として与えられる金額の値をプログラム(図1)の変数 kingaku に設定し,(7)行目の代わりに変数 maisu の値を関数の戻り値とすれば,関数「枚数(金額)」のプログラムとなります。では,その関数を使って最小交換硬貨枚数を計算するプログラムを作ってみましょう。ここでも,100円以下の買い物として考えてみます。
【関数の説明】(再掲)
Sさんは,図2のようなプログラムを作成した。変数 kakaku に与えられる商品の価格に対して,釣り銭を表す変数 tsuri を用意し,妥当な tsuri のすべての値に対して交換する硬貨の枚数を調べ,その最小値を求めるプログラムである。なお,ここでは例として商品の価格を46円としている。
このプログラムでは,先生(T)のアドバイスに従い,釣り銭無しの場合も含め,99円までのすべての釣り銭に対し,その釣り銭になるように支払う場合に交換される硬貨の枚数を求め,その最小値を最小交換硬貨枚数として計算している。
最小値の計算では,これまでの払い方での最小枚数を変数 min_maisu に記憶しておき,それより少ない枚数の払い方が出るたびに更新している。min_maisu の初期値には,十分に大きな値として100を用いている。100円以下の買い物では,使う硬貨の枚数は100枚を超えないからである。
(2) min_maisu = 100
(3) [サ] を [シ] から 99 まで 1 ずつ増やしながら繰り返す:
(4) │ shiharai = kakaku + tsuri
(5) │ maisu = [ス] + [セ]
(6) │ もし [ソ] < min_maisu ならば:
(7) └ └ [タ] = [ソ]
(8) 表示する(min_maisu)
図2 最小交換硬貨枚数を求めるプログラム
このプログラムを実行してみたところ3が表示された。46円を支払うときの最小交換硬貨枚数は,支払いで50円玉が1枚,1円玉が1枚,釣り銭で5円玉が1枚の計3枚なので,正しく計算できていることが分かる。同様に,kakaku の値をいろいろと変えて実行してみたところ,すべて正しく計算できていることを確認できた。
[サ],[ソ]・[タ]の解答群
⓪ maisu ① min_maisu ② shiharai ③ tsuri
[シ]の解答群
⓪ 0 ① 1 ② 99 ③ 100
[ス]・[セ]の解答群
⓪ 枚数(shiharai) ① 枚数(kakaku) ② 枚数(tsuri) ③ shiharai ④ kakaku ⑤ tsuri
2解答
[サ]=③(配点2点)
[シ]=⓪(配点2点)
[ス]・[セ]=⓪・②(順序は問わない。両方正解で3点)
[ソ]=⓪(配点2点)
[タ]=①(配点2点)
3解説(端的に)
やっていることは総当たりです。釣り銭を0円から99円まで全部試し,そのたびに交換枚数を計算して,いちばん小さかった値を覚えておく。
動かすのは釣り銭なので[サ]=tsuri。(4)行目で tsuri が使われていることからも確認できます。「釣り銭無しの場合も含め」と問題文にあるので[シ]=0。
支払額は shiharai = kakaku + tsuri。交換される硬貨は支払い分と釣り銭分の両方なので,[ス][セ]は 枚数(shiharai) と 枚数(tsuri)。問1の 枚数(x+y)+枚数(y) と同じ式です。
残りは最小値を求める定番の型。今回の枚数 maisu([ソ])が min_maisu より小さければ,min_maisu([タ])にその値を入れ直す。[ソ]は(6)行目と(7)行目の両方に同じものが入ります。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
最小値を求める型。 たくさんの候補の中から一番小さいものを見つけるとき,プログラムでは次の3ステップを踏みます。
- 記録用の変数を用意し,十分に大きな値を初期値として入れる(ここでは min_maisu = 100)。
- 候補を一つずつ計算する(ここでは maisu)。
- 候補が記録より小さければ,記録を書き換える(min_maisu = maisu)。
「十分に大きな値」は,起こりうるどの候補よりも大きくなければなりません。問題文は「100円以下の買い物では,使う硬貨の枚数は100枚を超えない」とその根拠を示しています。
総当たり(全探索)。 賢い方法が思いつかないとき,「あり得る場合を全部試して比べる」のは立派な戦略です。今回は釣り銭が0〜99の100通りしかないので,コンピュータなら一瞬で終わります。
変数の役割を見分ける。 このプログラムには5つの変数が出てきます。kakaku は最初に決めたら変わらない値,tsuri は繰返しで動かす値,shiharai と maisu は毎回計算し直す値,min_maisu は記録を残す値。役割が違うので,どの空欄にどれが入るかは役割から絞れます。
検算 — 別の道すじで確かめる
正解の組合せでトレースする。 kakaku=46,min_maisu の初期値は100。
| tsuri | shiharai =46+tsuri | 枚数(shiharai) | 枚数(tsuri) | maisu | 更新後の min_maisu |
|---|---|---|---|---|---|
| 0 | 46 | 6 | 0 | 6 | 6(100→6に更新) |
| 1 | 47 | 7 | 1 | 8 | 6(更新なし) |
| 2 | 48 | 8 | 2 | 10 | 6(更新なし) |
| 3 | 49 | 9 | 3 | 12 | 6(更新なし) |
| 4 | 50 | 1 | 4 | 5 | 5(更新) |
| 5 | 51 | 2 | 1 | 3 | 3(更新) |
| 6〜99 (94回分は省略) | 52〜145 | — | — | いずれも4以上 | 3のまま(更新なし) |
tsuri は0から99まで1ずつ増えるので,上の表の 0〜5 は飛ばさずに並べてあります。最後の行だけ94回分をまとめましたが,そこでの maisu はどの回も4以上なので(最小は tsuri=10 と tsuri=55 の4),3が更新されることはありません。最後に表示されるのは 3。問題文の記述と一致します。
maisu が3より小さくなることはない,を場合分けで確かめる。 このプログラムが調べる tsuri は 0 から 99 までです。tsuri=0 のときとそれ以外に分けて,1枚・2枚があり得ないことを順に落としていきます。
- (i) tsuri=0(釣り銭なし)のとき。 maisu = 枚数(46)+枚数(0) = 6+0 = 6 です。1枚にも2枚にもなりません。この1通りはこれで片付きます。
- (ii) tsuri が1以上のとき。 釣り銭 tsuri も支払額 shiharai = 46+tsuri も0円ではないので,どちらも硬貨が最低1枚は要ります。つまり 枚数(shiharai) ≧ 1 かつ 枚数(tsuri) ≧ 1 で,maisu ≧ 2。よって1枚はあり得ません。さらに maisu = 2 になるのは 枚数(shiharai) = 1 かつ 枚数(tsuri) = 1 の場合だけです。硬貨1枚でちょうど作れる金額は 1,5,10,50,100 円ですが,このプログラムの tsuri は99までなので,枚数(tsuri) = 1 となるのは tsuri = 1,5,10,50 の4通り。このとき shiharai = 46+tsuri はそれぞれ 47,51,56,96 で,どれも 1,5,10,50,100 のいずれでもないため 枚数(shiharai) = 1 にはなりません。よって2枚もあり得ません。
(i)(ii) で tsuri の値をすべて尽くしたので maisu ≧ 3。そして tsuri=5 のとき実際に maisu = 3 が達成されるので,最小は3だと確かめられました。
初期値100は必ず更新されるか。 繰返しの最初の回,つまり tsuri=0 の回では maisu = 枚数(kakaku) + 枚数(0) = 枚数(kakaku) が計算されます。kakaku は100円以下で,100円以下の金額のうち最も枚数が要るのは99円(50+10×4+5+1×4 の10枚)ですから,この tsuri=0 の回に限れば maisu = 枚数(kakaku) ≦ 10。必ず100より小さいので,最初の1回で min_maisu は更新されます。初期値の100がそのまま表示されてしまう事故は起きません。
ここで「maisu ≦ 10」が言えるのは tsuri=0 の回だけで,プログラム全体を通した maisu の性質ではないことに注意してください。tsuri が0でない回では支払額 shiharai = kakaku + tsuri が100円を超えうるので(kakaku=46 なら最大145円),「100円以下の買い物」という前提は shiharai には効きません。実際 kakaku=46 では,tsuri=98 の回に maisu = 枚数(144)+枚数(98) = 9+9 = 18 となり10を大きく超えます(下の[シ]②の分析に出てくる16も同じ理由です)。初期値100の議論に必要なのは「最初の1回で必ず更新される」ことだけなので,この段落の結論は変わりません。
誤答を最後まで追う。
- [サ]に tsuri 以外(maisu,min_maisu,shiharai)を入れると,(4)行目の
kakaku + tsuriの tsuri に値が入らないまま計算することになり,そもそも動きません。 - [シ]① の 1 は,釣り銭0円(ちょうど払い)を調べ落とします。46円では偶然どちらも3になり気づけませんが,例えば kakaku=50 でやると差が出ます。正しくは tsuri=0 で 枚数(50)+枚数(0)=1+0=1枚。1から始めると tsuri=50 の 枚数(100)+枚数(50)=1+1=2枚が最小となり,答えがずれます。
- [シ]② の 99 では tsuri=99 の1回しか回らず,枚数(145)+枚数(99)=6+10=16 が表示されます。
- [シ]③ の 100 では,100から99まで「増やしながら」なので繰返しが一度も実行されず,初期値のまま 100 が表示されます。
- [ス][セ]で ① の 枚数(kakaku) を選ぶと,釣り銭の枚数を数えたことになりません。枚数(shiharai)+枚数(kakaku) で最後まで回すと表示は 7 で,3になりません。③④⑤ は「円」という金額そのもので,枚数関数を通していないため枚数として足せません。
- [ソ]① の min_maisu を選ぶと条件が
min_maisu < min_maisuとなり,どんな値でも成り立ちません。一度も更新されず 100 が表示されます。[タ]を正解の min_maisu にしたまま[ソ]だけを変えると,② の shiharai なら表示は 46,③ の tsuri なら 0 となり,いずれも3になりません。 - [タ]に min_maisu 以外を入れると,記録係である min_maisu が最後まで100のままなので,(8)行目は 100 を表示します。
ここで効く一般則・学問的背景
- 最小値探索は「大きな初期値 → 走査 → 小さければ更新」。 最大値を探すときは向きを逆にして,初期値を十分小さく,条件を「大きければ」にします。
- 初期値の根拠を必ず持つ。 「なんとなく大きい値」ではなく,「起こりうる最大値より確実に大きい」と言えることが必要です。この問題文はその根拠をわざわざ1文使って説明しています。
- 条件式と更新文には同じ量が現れる。 「maisu が min_maisu より小さいなら,min_maisu に maisu を入れる」。[ソ]が(6)行目と(7)行目の両方に登場するのはこのためです。片方だけ別の変数にすると,比べたものと記録するものがずれて壊れます。
- 作った部品を組み合わせる。 問2で作ったプログラムを 枚数() という関数に仕立て,問3ではそれを部品として2回呼び出しています。中身を意識せずに使えるのが,関数にまとめることの利点です。
- 総当たりが使えるかは,候補の数で決まる。 ここでは100通りなので何の問題もありません。もし候補が天文学的な数になるなら,別の設計が必要になります。
- 「〜より小さくならない」を示すときは,調べる範囲を場合分けで尽くす。 上の検算では tsuri=0 と tsuri≧1 の2つに分け,どちらでも1枚・2枚が起きないことを確認しました。片方の場合だけを見て「〜でなければならない」と決めつけると,見落とした場合が残ります。
学問的背景。 このプログラムの形は,計算機科学で「線形探索による最小値の決定」と呼ばれる最も基本的なパターンで,候補を一つずつ見て記録を更新するだけです。候補が n 個なら手間は n に比例し,これを「計算量が O(n) である」と表現します。一方,問題の入口で「釣り銭は99円まで調べれば十分」と探索の範囲を限定したことにも注目してください。全探索の設計では,探し漏らさない範囲を,できるだけ狭く見積もることが性能を決めます。実際,46円の商品に対して釣り銭が99円というのは常識的にはあり得ませんが,「絶対に見落とさない安全な上限」としてこの値が選ばれています。安全側に倒しつつ現実的な大きさに収める,というのは実務のシステム設計でも日常的に行われる判断です。情報Ⅱでは,計算量の見積もりや,全探索が現実的でない問題への近似解法(ヒューリスティクス)を扱っていきます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第3章 コンピュータとプログラミング に対応します。
問1 令和7年度 共通テスト『情報Ⅰ』試作問題 第4問 問1
1問題
次の表1は,国が実施した生活時間の実態に関する統計調査をもとに,15歳以上19歳以下の若年層について,都道府県別に平日1日の中で各生活行動に費やした時間(分)の平均値を,スマートフォン・パソコンなどの使用時間をもとにグループに分けてまとめたものの一部である。ここでは,1日のスマートフォン・パソコンなどの使用時間が1時間未満の人を表1-A,3時間以上6時間未満の人を表1-Bとしている。
表1-A:スマートフォン・パソコンなどの使用時間が1時間未満の人の生活行動時間に関する都道府県別平均値
| 都道府県 | 睡眠(分) | 身の回りの用事(分) | 食事(分) | 通学(分) | 学業(分) | 趣味・娯楽(分) |
|---|---|---|---|---|---|---|
| 北海道 | 439 | 74 | 79 | 60 | 465 | 8 |
| 青森県 | 411 | 74 | 73 | 98 | 480 | 13 |
| 〜(中略)〜 | ||||||
| 茨城県 | 407 | 61 | 80 | 79 | 552 | 11 |
| 栃木県 | 433 | 76 | 113 | 50 | 445 | 57 |
| 〜(以下略)〜 | ||||||
表1-B:スマートフォン・パソコンなどの使用時間が3時間以上6時間未満の人の生活行動時間に関する都道府県別平均値
| 都道府県 | 睡眠(分) | 身の回りの用事(分) | 食事(分) | 通学(分) | 学業(分) | 趣味・娯楽(分) |
|---|---|---|---|---|---|---|
| 北海道 | 436 | 74 | 88 | 63 | 411 | 64 |
| 青森県 | 461 | 57 | 83 | 55 | 269 | 44 |
| 〜(中略)〜 | ||||||
| 茨城県 | 443 | 80 | 81 | 82 | 423 | 63 |
| 栃木県 | 386 | 120 | 79 | 77 | 504 | 33 |
| 〜(以下略)〜 | ||||||
(出典:総務省統計局の平成28年社会生活基本調査により作成)
花子さんたちは,表1-Aをスマートフォン・パソコンなどの使用時間が短いグループ,表1-Bをスマートフォン・パソコンなどの使用時間が長いグループと設定し,これらのデータから,スマートフォン・パソコンなどの使用時間と生活行動に費やす時間の関係について分析してみることにした。
ただし,表1-A,表1-Bにおいて一か所でも項目のデータに欠損値がある場合は,それらの都道府県を除外したものを全体として考える。なお,以下において,データの範囲については,外れ値も含めて考えるものとする。
問1 花子さんたちは,これらのデータから次のような仮説を考えた。表1-A,表1-Bのデータだけからは分析できない仮説を,次の⓪〜③のうちから一つ選べ。[ア]
⓪ 若年層でスマートフォン・パソコンなどの使用時間が長いグループは,使用時間が短いグループよりも食事の時間が短くなる傾向があるのではないか。
① 若年層でスマートフォン・パソコンなどの使用時間が長いグループに注目すると,スマートフォン・パソコンなどを朝よりも夜に長く使っている傾向があるのではないか。
② 若年層でスマートフォン・パソコンなどの使用時間が長いグループに注目すると,学業の時間が長い都道府県は趣味・娯楽の時間が短くなる傾向があるのではないか。
③ 若年層でスマートフォン・パソコンなどの使用時間と通学の時間の長さは関係ないのではないか。
2解答
[ア]=①(配点4点)
3解説(端的に)
表1-Aと表1-Bに入っているのは,睡眠・身の回りの用事・食事・通学・学業・趣味娯楽の「1日あたりの平均時間」だけです。1日の合計時間しか記録されておらず,「何時ごろに何をしたか」という時間帯の情報はどこにもありません。①は「朝よりも夜に長く使っているか」という時間帯どうしの比較を求めているので,この2つの表からは調べようがありません。ほかは表の列を見比べるだけで扱えます。⓪は食事の列を表1-Aと表1-Bで比べる,②は表1-Bの中で学業の列と趣味・娯楽の列の関係を見る,③は通学の列を表1-Aと表1-Bで比べる,という手順で分析できます。したがって答えは①です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
データ分析ではまず「その問いは,手元のデータで答えられるか」を確かめます。ここで効くのがデータの粒度(どこまで細かく記録されているか)という考え方です。この表の1マスは「ある都道府県の,ある行動に,1日で平均何分使ったか」を表しています。つまり最も細かい単位が「1日・1行動・1都道府県」であり,それより細かい「午前/午後」「朝/夜」には分解できません。粒度より細かい問いはデータを増やさない限り答えられません。
もう一つ,問題文の「一か所でも欠損値がある都道府県は除外する」という断り書きにも注目してください。これは欠損値(記録が抜けている値)の扱いを先に決めておく,という前処理の宣言です。県ごとに使うデータが違うと比較がゆがむので,全項目そろっている県だけを全体とする,という揃え方をしています。
検算 — 別の道すじで確かめる
「分析できる」と言うためには,具体的な手順が書けるかを試すのが確実です。
⓪:表1-Aの食事の列の平均(または中央値)と,表1-Bの食事の列の平均を計算して比べる。これで「長いグループの方が食事が短いか」は判定できます。→ 分析できる。
②:表1-Bだけを取り出し,横軸に学業,縦軸に趣味・娯楽をとった散布図をかいて相関を見る。→ 分析できる。
③:表1-Aの通学の列と表1-Bの通学の列を比べ,違いがあるかを見る。「関係ない」という仮説も,違いが小さいことを示せば検討できます。→ 分析できる。
①:朝の使用時間と夜の使用時間という2つの数値が必要ですが,表にあるのは1日の合計だけ。どの列を組み合わせても朝と夜には分けられません。→ 分析できない。
なお,①を「使用時間が長いグループなら夜型だろう」と常識で補って答えを出そうとすると誤ります。データ分析で問われているのは常識の当てはめではなく,手元のデータで検証できるかどうかです。
ここで効く一般則・学問的背景
・仮説は「使う変数」に分解できる。必要な変数が表にないなら,その仮説はこのデータでは検証できない。
・データの粒度より細かい問いには答えられない。1日単位の集計から時間帯別の傾向は復元できない。
・「関係がないのではないか」という否定形の仮説も,比べる列がそろっていれば検討できる(③が分析できる側なのはこのため)。
・この表の1行は都道府県であって個人ではない。都道府県単位で見えた傾向を,そのまま一人ひとりに当てはめてはいけない。
学問的背景。「集団の集計値で見えた関係を個人に当てはめてしまう誤り」は生態学的誤謬と呼ばれ,社会統計学で古くから警戒されてきた論点です。1950年に社会学者ロビンソンが,州単位の集計では強く見える関係が個人単位ではほとんど消えることを示して以来,公的統計を扱う場面での基本的な注意事項になりました。また「必要な変数が記録されていないので答えられない」という判断は,情報Ⅱで学ぶデータサイエンスのサイクル(問題設定→データ収集→分析→解釈)の最初の段階,つまりどんなデータを集める設計にするかという話に直結します。分析の腕前より前に,設計で勝負が決まる場面は多いのです。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します。
問2 令和7年度 共通テスト『情報Ⅰ』試作問題 第4問 問2
1問題
問2 花子さんたちは表1-A,表1-Bのデータから睡眠の時間と学業の時間に注目し,それぞれを図1と図2の箱ひげ図(外れ値は○で表記)にまとめた。これらから読み取ることができる最も適当なものを,後の⓪〜③のうちから一つ選べ。[イ]
【図1】睡眠の時間の分布。横軸は分で,目盛りは350・400・450・500。表1-Aと表1-Bの箱ひげ図が上下に並ぶ。
・表1-A:外れ値が350の目盛りより左に1つ,500の目盛りのところに1つ。ひげの左端は350と400の間,ひげの右端は450と500の間。箱の左端(第1四分位数)は400の目盛りのすぐ右で,420分にあたる位置(400と450の間を5等分した2つ目の点)より左。中央線(中央値)は400と450のほぼ中間で,420分にあたる位置より右。箱の右端(第3四分位数)は450の目盛りのすぐ左。
・表1-B:外れ値はなし。ひげの左端は350と400の間で,表1-Aのひげの左端より右。ひげの右端は450と500の間で,表1-Aのひげの右端より右。箱の左端は400と450の中間よりわずかに左だが,420分にあたる位置よりは右。中央線は400と450の中間より右,箱の右端は450の目盛りのすぐ右。
・したがって,箱の左端・中央線・右端のいずれも,表1-Bの方が表1-Aより右(睡眠が長い側)にある。(原図は問題冊子PDFを参照)
【図2】学業の時間の分布。横軸は分で,目盛りは300・400・500・600・700。表1-Aと表1-Bの箱ひげ図が上下に並ぶ。
・表1-A:ひげの左端は300と400の間。箱の左端は400と500の中間(450にあたる位置)のすぐ左,中央線は500の目盛りのすぐ左,箱の右端は500と600の間で,その中間(550にあたる位置)より左。ひげの右端は600と700の間。外れ値が700の目盛りより右に1つ。
・表1-B:外れ値が300の目盛りより左に2つあり,ひげの左端も300の目盛りより左。箱の左端は300と400の間,中央線は400の目盛りのすぐ左,箱の右端は400と500の中間(450にあたる位置)より明らかに左。ひげの右端は500の目盛りのすぐ右で,右側には外れ値がない(=この右端がそのまま最大値)。
・したがって,学業の時間では表1-Aと表1-Bの中央線が大きく離れている(表1-Aは500の目盛りのすぐ左,表1-Bは400の目盛りのすぐ左)。(原図は問題冊子PDFを参照)
⓪ 睡眠の時間が420分以上である都道府県の数をみたとき,表1-Aの方が表1-Bよりも多い。
① 学業の時間が550分以上の都道府県は,表1-Aにおいては全体の半数以上あり,表1-Bにおいては一つもない。
② 学業の時間が450分未満の都道府県は,表1-Bにおいては全体の75%以上であり,表1-Aにおいては50%未満である。
③ 都道府県別の睡眠の時間と学業の時間を比較したとき,表1-Aと表1-Bの中央値の差の絶対値が大きいのは睡眠の時間の方である。
2解答
[イ]=②(配点5点)
3解説(端的に)
箱ひげ図は「下から25%・50%・75%の位置がどこか」を読む道具です。②を確かめます。図2で表1-Bの箱の右端は第3四分位数であり,これは400と500の中間(450にあたる位置)より明らかに左にあります。第3四分位数以下に全体の75%以上がいるので,学業450分未満は表1-Bで75%以上。次に表1-Aの中央線は500の目盛りのすぐ左で,450より右にあります。中央値より小さい県は全体の半数未満なので,450分未満は表1-Aで50%未満。両方成り立つので②が正しい,と読み取れます。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
箱ひげ図は,データを小さい順に並べたときの5つの目印を1本の図にしたものです。左のひげの端が最小値,箱の左端が第1四分位数(下から25%の位置),箱の中の太い線が中央値(下から50%の位置),箱の右端が第3四分位数(下から75%の位置),右のひげの端が最大値です。外れ値がある場合は○で別に打ち,ひげは外れ値を除いた範囲までしか伸びません。
ここから言えるのは,次の形の主張です。いずれも「位置関係が分かれば割合が言える」という向きで使います。
・ある値 t が中央線より左にあるなら,「t 未満の割合は半数未満」。
・ある値 t が箱の右端より右にあるなら,「t 未満の割合は75%以上」。
・ある値 t が箱の左端より左にあるなら,「t 以上の割合は75%以上」。
逆に,箱ひげ図から分かるのは最小値・第1四分位数・中央値・第3四分位数・最大値と外れ値の位置であって,箱やひげの内側にある区間について「ちょうど何県あるか」を数えることは,一般にはできません。ただし,外れ値は○で1点ずつ打たれるので,そこだけは個別に数えられます。そのため,ひげの端より外側の区間については個数が確定することがあります。たとえば図1の表1-Aでは,350の目盛りより左に外れ値が1つあり,ひげの左端は350と400の間にあります。ひげの左端は外れ値を除いた最小値ですから,睡眠が350分より短い県はその外れ値1つだけ,つまりちょうど1県と確定します。その特別な場合が「0個」の判定で,ある値 t が一番外側の点より右にあれば「t 以上は0個」,左にあれば「t 未満は0個」と言えます。その側にはデータが存在しないからです。この設問の①の後半(「表1-Bには一つもない」)は,この0個の形で判定します。なお外れ値が○で打たれている図では,ひげの端ではなく外れ値まで含めた一番外側の点が最大値・最小値になるので,「0個」と言い切る前にその側に外れ値がないことを必ず確かめてください。選択肢を見るときは,四分位数や最大値・最小値との位置関係だけで言い切れる主張かどうかを最初に確かめると速いです。
検算 — 別の道すじで確かめる
⓪が誤りである理由。図1では,箱の左端・中央線・右端のいずれも表1-Bの方が表1-Aより右にあります。つまり表1-Bの方が,睡眠時間の長い側に分布がずれています。そのうえで,420分という値がそれぞれの箱のどこに来るかを見ます。420分には目盛り線がないので,400と450の間を5等分した2つ目の位置として見当をつけてください。
表1-Aでは,420分は箱の左端(第1四分位数)より右,中央線(中央値)より左に来ます。第1四分位数より小さい値の側に全体の25%以上がいるので420分以上は75%以下,中央値より大きい値の側に全体の50%以上がいるので420分以上は50%以上。つまり表1-Aで420分以上の県は全体の50%以上75%以下にとどまります。一方,表1-Bでは420分が箱の左端(第1四分位数)より左に来ます。第1四分位数より大きい値の側には全体の75%以上がいるので,表1-Bで420分以上の県は全体の75%以上です。表1-Aと表1-Bは同じ都道府県をそろえた集まりで県数が等しいため,割合の大小はそのまま個数の大小になります。表1-Aは75%以下,表1-Bは75%以上ですから,表1-Aの方が多いということはありえません。したがって⓪は誤りです。
①が誤りである理由。550分は500の目盛りと600の目盛りのちょうど中間です。図2の表1-Aの中央線は500の目盛りのすぐ左にあり,550より小さい。中央値が550未満ということは,550分以上の県は全体の半数未満です。よって「表1-Aにおいては全体の半数以上」という前半が成り立ちません。なお表1-Bには右側に外れ値がないので,ひげの右端がそのまま最大値です。それが500の目盛りのすぐ右,つまり550より小さいので,550分以上の県は0個と確定します。「表1-Bには一つもない」という後半だけは正しいのですが,前半が崩れているので①全体としては誤りです。
③が誤りである理由。睡眠(図1)では表1-Aと表1-Bの中央線がどちらも400と450の目盛りの間にあり,互いに近い位置です。一方,学業(図2)では表1-Aの中央線が500の目盛りのすぐ左,表1-Bの中央線が400の目盛りのすぐ左で,およそ100分の目盛り1つ分ほど離れています。中央値の差の絶対値が大きいのは学業の方なので,「睡眠の方」とする③は誤りです。
②をもう一度別の角度から。「450分未満が75%以上」は「第3四分位数が450より小さい」と言い換えられます。表1-Bの箱の右端は450にあたる位置より左なので成立。「450分未満が50%未満」は「中央値が450より大きい」と言い換えられます。表1-Aの中央線は450にあたる位置より右なので成立。どちらも四分位数と1つの値を比べるだけで判定でき,個々の県の値を読む必要がありません。
ここで効く一般則・学問的背景
・「中央値が t より大きい」なら「t 未満は半数未満」。「第3四分位数が t より小さい」なら「t 未満は75%以上」。選択肢を四分位数と1つの値の位置関係に翻訳するのが定石です。
・箱ひげ図から,箱やひげの内側の区間に何県あるかを一般に数えることはできない。読めるのは最小値・第1四分位数・中央値・第3四分位数・最大値と外れ値の位置と,そこから決まる割合です。ただし外れ値は1点ずつ打たれるので数えられ,ひげの端より外側の区間については個数が確定することがあります(図1の表1-Aで睡眠350分未満はちょうど1県,というのがその例)。その特別な場合が「一番外側の点より外側は0個」で,①の後半はこの形です。
・ただし,①を落とすのにこの「0個」の判定は必要ありません。①は「表1-Aでは半数以上あり,かつ表1-Bでは一つもない」という二つを同時に主張する形なので,前半が崩れた時点で①全体が誤りと確定し,後半を判定できるかどうかは結論を変えません(検算欄で実際にそう処理しています)。「箱ひげ図では個数は数えられない」と無条件に覚えることの実害は,①の後半のような「0個」の主張まで判定不能だと思い込み,別の設問でその判定が結論を左右する場面に対応できなくなることです。
・箱ひげ図はデータの個数を表さない。表1-Aと表1-Bで県数が同じだからこそ割合の比較がそのまま個数の比較になりますが,個数が違う集団どうしでは割合と個数を混同しないよう注意が必要です。
・「差の絶対値」を比べるときは,同じ量どうし(ここでは分どうし)で比べる。倍率と差は別の量です。表1-Aと表1-Bで中央値が何倍か,という話と,何分離れているか,という話は違います。
・箱ひげ図の中央値は,箱の真ん中に来るとは限りません。箱の中で中央線が左右どちらかに寄っていれば,それは分布が非対称だという情報です。
学問的背景。箱ひげ図は,アメリカの統計学者ジョン・テューキーが1970年代に提唱した探索的データ解析(EDA)の中で広まった図です。平均値と標準偏差だけでデータを要約すると,極端な値1つに引きずられて全体像を見誤ることがあります。そこでテューキーは,順位にもとづく(外れ値に強い)要約として四分位数を前面に出し,データをまず「眺めて」から仮説を立てることを推奨しました。外れ値を○で別に打つ描き方も彼の流儀です。情報Ⅱでは,複数の集団を横に並べて分布を比べるこの発想が,そのままヒストグラムやバイオリンプロットなどの可視化の選び分けにつながっていきます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します。
問3 令和7年度 共通テスト『情報Ⅰ』試作問題 第4問 問3
1問題
問3 花子さんたちは,スマートフォン・パソコンなどの使用時間の長さの違いが,睡眠の時間と学業の時間のどちらに大きく影響しているかについて調べることにした。そのために,都道府県ごとに睡眠の時間と学業の時間のそれぞれにおいて,表1-Aの値から表1-Bの値を引いた差について考え,その結果を次の図3の箱ひげ図(外れ値は○で表記)で表した。図3について述べたこととしてA〜Eの中から正しいものはどれか。当てはまるものの組合せとして最も適当なものを,後の⓪〜⑤のうちから一つ選べ。[ウ]
【図3】生活行動時間の差。縦軸は「表1-Aの値から表1-Bの値を引いた差」(分)で,目盛りは−100・0・100・200・300。横に「睡眠」「学業」の2つの箱ひげ図が並ぶ。
・睡眠:箱は0の目盛りをまたいでおり,箱の上端は0のすぐ上,箱の下端は0より下(−100の目盛りよりはずっと上)。中央線は0のすぐ下。ひげの上端は0と100の間,ひげの下端は0と−100の間。外れ値は上に1つ(0と100の間),下に3つ(うち1つは−100の目盛りより下)。
・学業:箱全体が0の目盛りより上にある。箱の下端は0と100の間,中央線は100の目盛りより少し上,箱の上端は100と200の間。ひげの上端は200と300の間,ひげの下端は0の目盛りより下(−100の目盛りよりは上)。外れ値が300の目盛りより上に1つ。
・したがって,睡眠の差は0の付近に集まっているのに対し,学業の差は箱ごと0より上に大きくずれている。(原図は問題冊子PDFを参照)
A 学業の時間の差が正の値になっている都道府県の若年層は,スマートフォン・パソコンなどの使用時間が短いグループの方が,学業の時間が長い傾向にある。
B 睡眠の時間の差が正の値になっている都道府県の若年層は,スマートフォン・パソコンなどの使用時間が短いグループの方が,睡眠の時間が短い傾向にある。
C スマートフォン・パソコンなどの使用時間による生活行動時間の差は,睡眠の時間よりも学業の時間の方に顕著に表れている。
D スマートフォン・パソコンなどの使用時間による生活行動時間の差は,学業の時間よりも睡眠の時間の方に顕著に表れている。
E スマートフォン・パソコンなどの使用時間による生活行動時間の差は,学業の時間と睡眠の時間の両方に同程度に表れている。
⓪ AとC ① AとD ② AとE
③ BとC ④ BとD ⑤ BとE
2解答
[ウ]=⓪(配点5点)
3解説(端的に)
この差は「表1-Aの値 − 表1-Bの値」です。差が正なら,使用時間が短いグループ(表1-A)の方が長い,という意味になります。Aは学業の差が正の県について「表1-Aの方が学業が長い」と言っており,定義そのままなので正しい。Bは睡眠の差が正なのに「表1-Aの方が睡眠が短い」と言っていて符号が逆なので誤りです。C・D・Eは差の大きさの比較。図3では睡眠の差の箱が0をまたいで0付近に集まるのに対し,学業の差は箱全体が0より上にあり,中央線も100の目盛りより上にあります。差が顕著なのは学業なのでCが正しい。よってAとC,すなわち⓪です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
2つのグループを比べるとき,グループごとに箱ひげ図を並べるやり方(図1・図2)と,県ごとに対応する値の差をとってから1本の箱ひげ図にするやり方(図3)があります。後者は対応のあるデータの見方で,「県ごとの事情」を打ち消してから比べられるのが強みです。北海道は北海道どうし,青森県は青森県どうしで引き算するので,その県に共通してかかっている事情は差をとる段階で打ち消されます。
差の箱ひげ図で最初に見るべきは「箱が0をまたいでいるか」です。またいでいれば,県によって符号が違う=どちらのグループが大きいか県ごとにばらばら,ということ。箱全体が0より上にあれば,少なくとも75%以上の県で差が正だと分かります。
そしてこの設問で最も大切なのは,引き算の向きを問題文で確認することです。「表1-Aの値から表1-Bの値を引いた差」=(表1-A)−(表1-B)。正なら表1-Aの方が大きい,負なら表1-Bの方が大きい。ここを取り違えるとAとBの正誤がそっくり入れ替わります。
検算 — 別の道すじで確かめる
Aを具体例で確かめる。表1-Aの茨城県の学業は552分,表1-Bの茨城県の学業は423分。差は 552 − 423 = 129 で正です。このとき確かに,使用時間が短いグループ(表1-A)の方が学業の時間が長い。定義どおりなのでAは正しい。
Bを具体例で確かめる。表1-Aの青森県の睡眠は411分,表1-Bの青森県の睡眠は461分。差は 411 − 461 = −50 で負です。では差が正になる県を見ると,たとえば栃木県の睡眠は表1-Aが433分,表1-Bが386分で,差は +47。このとき表1-A(使用時間が短いグループ)の方が睡眠は長い。Bは「短い」と言っているので誤りです。
Bを選んでしまう誤読を最後まで追う。もし「表1-Aの値から表1-Bの値を引いた差」を逆向き(表1-B − 表1-A)だと読み違えると,「差が正=表1-Bの方が長い=表1-Aの方が短い」となってBが正しく見えます。ただし同じ誤読をAに当てはめると,「差が正=表1-Bの方が学業が長い」となってAは誤りになります。その結果,選ぶ組合せはBとCで③になります。③という誤答は,まさにこの引き算の向きの取り違えから生まれます。問題文の一文を指でなぞって確認する習慣が,そのまま得点になる場面です。
D・Eが誤りである理由。DはCと主張が逆です。図3の睡眠の差は箱が0をまたいで0付近に集まっており,学業のように箱ごと0から離れてはいません。Eの「同程度」も,睡眠は箱が0をまたぐ/学業は箱全体が0より上,という違いがある以上,成り立ちません。C・D・Eは互いに排他的な主張なので,同時に2つ以上が正しくなることはありません。ここではCが正しいと分かったので,DとEは自動的に落ちます。
ここで効く一般則・学問的背景
・差をとる問題では,まず引き算の向きを問題文で確定する。「AからBを引く」=A−B。
・差の箱ひげ図では「箱が0をまたぐか」を最初に見る。またぐなら符号が県ごとに割れている。
・箱全体が0より上でも,「すべての県で正」とは限りません。図3の学業では,ひげの下端が0の目盛りより下に伸びており,差が負の県も存在します。言えるのは「75%以上の県で正」までです。「必ず」「すべて」と言い切る前に,ひげと外れ値まで見るのが安全です。
・対応のあるデータでは,個体(ここでは都道府県)ごとの差をとることで,個体固有の要因を打ち消せる。
・ただし差が大きいことは,因果関係の証明にはなりません。スマートフォンの使用が学業時間を減らしたのか,学業時間が短い人がスマートフォンを長く使うのか,あるいは第三の要因が両方に効いているのか,この図だけでは区別できません。
学問的背景。「同じ対象を2つの条件で測り,差を分析する」という設計は対応のある比較(paired design)と呼ばれ,統計学では2標本を単純に並べて比べるより検出力が高い方法として知られています。個体差という大きなノイズを引き算で消せるからです。医学の臨床試験で「同じ患者の投薬前後」を比べるのも同じ発想です。ただしこの調査は同一人物の前後を測ったわけではなく,県ごとに別のグループの平均値どうしを引いている点には注意が必要で,そこが厳密な対応のある比較との違いになります。情報Ⅱのデータサイエンスでは,こうしたデータの取得設計そのものが結論の強さを決めることを,仮説検定や交絡の議論とあわせて学びます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します。
問4 令和7年度 共通テスト『情報Ⅰ』試作問題 第4問 問4
1問題
問4 花子さんたちは,表1-Aについて,睡眠の時間と学業の時間の関連を調べることとした。次の図4は,表1-Aについて学業の時間と睡眠の時間を散布図で表したものである。ただし,2個の点が重なって区別できない場合は □ で示している。
【図4】表1-Aの学業の時間と睡眠の時間の散布図。横軸=学業の時間(分,目盛りは400・500・600・700),縦軸=睡眠の時間(分,目盛りは350・400・450・500)。都道府県ごとの点が打たれ,2点が重なる箇所は□で示されている。
・点の並びは,全体として左上から右下へゆるやかに下がる。すなわち,学業の時間が長い県ほど睡眠の時間が短い側に寄る,ゆるやかな傾向がある。ただし散らばりは大きく,直線的にはそろっていない。
・図の左側に睡眠の時間の箱ひげ図(縦向き)が添えられている。上端の外れ値は500の目盛りの高さ,下端の外れ値は350の目盛りより少し下。つまり睡眠の時間は,350の目盛りのすぐ下から500の目盛りまでの範囲に収まる。
・図の下側に学業の時間の箱ひげ図(横向き)が添えられている。ひげの左端は400の目盛りより左,右側には700の目盛りより右に外れ値が1つ。つまり学業の時間は,400の目盛りより左から700の目盛りより右まで広がる。
・したがって,範囲(最大値と最小値の幅)は学業の時間の方が睡眠の時間より大きい。(原図は問題冊子PDFを参照)
都道府県単位でみたとき,学業の時間と睡眠の時間の間には,全体的には弱い負の相関があることが分かった。この場合の負の相関の解釈として最も適当なものを,次の⓪〜③のうちから一つ選べ。なお,ここでは,データの範囲を散らばりの度合いとして考えることとする。[エ]
⓪ 睡眠の時間の方が,学業の時間より散らばりの度合いが大きいと考えられる。
① 睡眠の時間の方が,学業の時間より散らばりの度合いが小さいと考えられる。
② 学業の時間が長い都道府県ほど睡眠の時間が短くなる傾向がみられる。
③ 学業の時間が長い都道府県ほど睡眠の時間が長くなる傾向がみられる。
2解答
[エ]=②(配点5点)
3解説(端的に)
「負の相関がある」とは,一方が大きいほどもう一方が小さくなる傾向があるという,2つの量の関係の向きについての言明です。ここでは横軸が学業の時間,縦軸が睡眠の時間なので,「学業の時間が長い県ほど睡眠の時間が短い傾向」と言い換えられます。これがそのまま②です。⓪と①は「睡眠と学業のどちらがばらついているか」という,それぞれの変数単独の散らばりの話であって,2つの量の関係を述べていないので相関の解釈にはなりません。③は「長いほど長くなる」なので正の相関の解釈であり,向きが逆です。したがって答えは②です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
散布図は,1つの点が1つの対象(ここでは1つの都道府県)を表し,その対象について2つの値を横位置と縦位置で同時に示す図です。点の並びが右下がりなら負の相関,右上がりなら正の相関,ばらばらなら相関がないと言います。「弱い」相関というのは,傾きの向きは見えるけれど点が線のまわりに大きく散らばっている状態のことです。
ここで区別しておきたい言葉が2つあります。
・散らばり:1つの変数について,値がどれくらい広がっているか。範囲・四分位範囲・標準偏差などで測ります。この設問では「データの範囲=最大値と最小値の幅」を散らばりとする,と問題文が指定しています。
・相関:2つの変数について,一方が動くともう一方がどう動く傾向があるか。向き(正か負か)と強さ(そろい方)で表します。
散らばりは「1つの変数の話」,相関は「2つの変数の関係の話」です。この2つは別のものなので,散らばりの大小をいくら述べても相関の説明にはなりません。
検算 — 別の道すじで確かめる
③が誤りである理由。③は「学業が長いほど睡眠も長い」で,これは点の並びが右上がりであることを意味します。図4の点の並びは左上から右下へ下がっているので,向きが逆です。負の相関の解釈としては②の一択になります。
①の扱いに注意。①の内容自体は,実は図4から見て取れます。問題文の指定どおり「範囲」で散らばりを測ると,睡眠の時間は350の目盛りのすぐ下から500の目盛りまでにおさまるので,幅はおよそ150分。学業の時間は400の目盛りより左から700の目盛りより右まで広がっており,幅は300分を超えます。したがって散らばりが小さいのは睡眠の方で,①は事実としては成り立ちます。それでも①は答えになりません。設問が問うているのは「負の相関の解釈」であって,「図4から読み取れる正しいこと」ではないからです。正しい記述でも,問われていることに答えていなければ選べません。
⓪が誤りである理由。⓪は①の逆で,「睡眠の方が散らばりが大きい」。上で見たとおり範囲が大きいのは学業なので,事実としても誤りです。さらに,そもそも散らばりの話は相関の解釈ではないという点でも外れています。
この落とし方が②を落とさないことの確認。「散らばりの話だから相関の解釈にならない」という論拠を②に当てはめてみると,②は「学業が長い県ほど睡眠が短い」という2つの変数の関係を述べているので,この論拠には引っかかりません。除外の理屈が正解まで巻き込んでいないことを毎回確かめておくと安心です。
ここで効く一般則・学問的背景
・相関は「2変数の関係の向きと強さ」。散らばりは「1変数の広がり」。別の概念なので混同しない。
・散布図で右下がりなら負の相関,右上がりなら正の相関。横軸と縦軸のどちらが何かを先に確認する。
・「弱い相関」は,向きはあるが点のばらつきが大きい状態。個々の県について「学業が長いからこの県は睡眠が短いはずだ」と当てはめることはできません。傾向はあくまで全体の話です。
・相関があっても因果があるとは限らない。学業が睡眠を削っているのか,別の要因が両方に効いているのかは,散布図だけでは判断できません。
・選択肢が「事実として正しいか」と「問われていることに答えているか」の2段階で評価される設問がある。正誤判定の前に,設問文が何を要求しているかを読み直す。
学問的背景。相関という概念を数量化したのは,19世紀末のイギリスのフランシス・ゴルトンと,その後を継いだカール・ピアソンです。ゴルトンは親子の身長の関係を散布図に描くことから出発し,そこから「回帰」という言葉も生まれました(問5で登場する回帰直線はその子孫です)。ピアソンが定式化した相関係数は −1 から 1 の値をとり,符号が向きを,絶対値が直線的なそろい方の強さを表します。ただし相関係数が測るのは直線的な関係だけで,きれいな曲線関係があっても相関係数はほぼ0になることがあります。情報Ⅱでは,相関と因果の区別,交絡因子,そして「見かけの相関」をどう見抜くかを,実データを使って詳しく扱います。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します。
問5 令和7年度 共通テスト『情報Ⅰ』試作問題 第4問 問5
1問題
問5 次の文章を読み,空欄[オ]に当てはまる数字をマークせよ。また,空欄[カ]に入れるのに最も適当なものを,図6中の⓪〜③のうちから一つ選べ。空欄[キ]に入れるのに最も適当なものを,後の解答群のうちから一つ選べ。
花子さんたちは都道府県別にみたときの睡眠の時間を学業の時間で説明する回帰直線を求め,図4の散布図にかき加えた(図5)。すると回帰直線から大きく離れている県が多いことが分かったため,自分たちの住むP県がどの程度外れているのかを調べようと考え,実際の睡眠の時間から回帰直線により推定される睡眠の時間を引いた差(残差)の程度を考えることとした。そのために,残差を比較しやすいように,回帰直線の式をもとに学業の時間から推定される睡眠の時間(推定値)を横軸に,残差を平均値0,標準偏差1に変換した値(変換値)を縦軸にしてグラフ図6を作成した。参考にQ県がそれぞれの図でどこに配置されているかを示している。また,図5の□で示した点については,問題の都合上黒丸で示している。
【図5】回帰直線をかき加えた散布図。図4と同じ散布図(横軸=学業の時間,目盛りは400・500・600・700。縦軸=睡眠の時間,目盛りは350・400・450・500)に,回帰直線の式 y = −0.14x + 491.17 の直線がかき加えられている。直線は左上から右下へ下がる。
・Q県の点は直線より上にあり,そこから直線まで下ろした縦の点線に「残差」と書かれている。Q県の位置での直線の高さ(=Q県の推定値)が縦軸に 406.8 と示されている。
・「P県」のラベルは,ある1つの点のすぐ下に置かれている。その点は,学業の時間が400の目盛りより右で,かつ400と500の中間(450にあたる位置)より左。睡眠の時間は400の目盛りより下(350の目盛りよりは上)。この点は回帰直線より下にある。
・散布図全体の中で最も下にある点(睡眠の時間が350の目盛りより下)は,学業の時間が500と600の間にある。
・散布図全体の中で最も右にある点(学業の時間が700の目盛りより右)は,睡眠の時間が350と400の間で,P県の点よりも低い位置にある。(原図は問題冊子PDFを参照)
【図6】睡眠の時間(推定値)と残差の変換値との関係。横軸=睡眠の時間(推定値)(分,目盛りは380から450まで10刻み),縦軸=残差の変換値(−3.0から3.0まで0.5刻み)。0.0の高さに水平の点線が引かれている。横軸 406.8 の位置に垂直の破線があり,その上端にQ県の点(変換値は1.0と1.5の間)。
・⓪:図の右上寄りにある点。変換値は 2.0 の目盛りより上(2.0 と 2.5 の間)。横軸の位置は440の目盛りのあたり。
・①:変換値は −1.5 の目盛りより下だが,−2.0 の目盛りより上。横軸の位置は430と440の目盛りの間。
・②:図の中で最も下にある点。変換値は −2.5 の目盛りより下(−2.5 と −3.0 の間)。横軸の位置は410と420の目盛りの間。
・③:図の中で横軸の位置が最も左にある点(380と390の目盛りの間で,406.8 の破線よりずっと左)。変換値は −1.0 と −1.5 の間。
・⓪〜③のラベルが付いていない点は,すべて変換値が −2.0 と 2.0 の間に収まっている。(原図は問題冊子PDFを参照)
図5と図6から読み取ることができることとして,平均値から標準偏差の2倍以上離れた値を外れ値とする基準で考えれば,外れ値となる都道府県の数は[オ]個である。図5中のP県については,図6中の⓪〜③のうち[カ]に対応しており,花子さんたちはこの基準に従いP県は[キ]と判断した。花子さんたちは学業の時間以外の他の要因の影響についても考え,さらに都道府県の特徴について分析することとした。
[キ]の解答群
⓪ 外れ値となっている ① 外れ値となっていない
② 外れ値かそうでないかどちらともいえない
2解答
[オ]=2(配点3点)
[カ]=①,[キ]=①(配点3点。[カ]と[キ]の両方が正解の場合のみ点を与える)
3解説(端的に)
図6の縦軸は,残差を平均0・標準偏差1にそろえた値です。だから「平均値から標準偏差の2倍以上離れた値」は,そのまま「縦軸の値が 2.0 以上,または −2.0 以下」と読み替えられます。図6で 2.0 の目盛りより上にあるのは⓪の1個,−2.0 の目盛りより下にあるのは②の1個。ほかの点はすべて間に収まるので,外れ値は2個(オ)。次にP県。図5でP県の点は回帰直線より下なので残差は負,したがって図6では0.0の点線より下に来て,⓪は消えます。残る①〜③の区別は,図6の横軸(推定値)で付けるのが確実です。図5のP県の点は学業が400の目盛りより右・450にあたる位置より左なので,回帰式 y = −0.14x + 491.17 に入れると推定値は 491.17 − 0.14×450 = 428.17 から 491.17 − 0.14×400 = 435.17 までの間になります。図6の②は横軸が410と420の目盛りの間,③は380と390の目盛りの間で,どちらも 428.17〜435.17 とはまったく重なりません。よって②も③もP県ではない。⓪はすでに消えているので,消去法で残るのは①(カ)だけです。①の変換値は −2.0 の目盛りより上なので,P県は外れ値となっていない=①(キ)です。
4 さらに深掘りするなら(使う道具・検算・学問的背景)
この設問で使う道具
回帰直線とは,散布図の点の真ん中を通るように引いた「予測用の直線」です。ここでは y = −0.14x + 491.17 で,x に学業の時間を入れると y(睡眠の時間の推定値)が出ます。傾きが −0.14 と負なので,学業の時間が長いほど推定値は小さくなります。この向きは後で効きます。
残差は「実際の値 − 推定値」です。点が直線より上にあれば残差は正,下にあれば負。残差の大きさは,その県が「直線から予想されるより,どれだけ外れているか」を表します。
標準化(変換値)は,値から平均を引き,標準偏差で割る操作です。こうすると,どんなデータでも平均が0,標準偏差が1になります。すると変換値そのものが「平均から標準偏差の何倍離れているか」を意味する数になります。だから「標準偏差の2倍以上離れている」は「変換値が 2.0 以上または −2.0 以下」と一対一で対応します。ここが本問の急所です。
図6の横軸が「推定値」であることにも意味があります。推定値は学業の時間から計算されるので,図6の横位置は学業の時間の情報を持っています。ただし傾きが負なので,図6で左にある点ほど,図5では右(学業が長い側)にあるという反転が起きます。そして推定値は回帰式で計算できる量なので,図5の点の横位置さえ押さえれば,その県の推定値を数値の範囲として押さえられます。すると,その範囲と横軸位置が重ならない候補を確実に除外できます。カの決め手はここです。
検算 — 別の道すじで確かめる
[オ]の確認。基準は「変換値の絶対値が 2 以上」。図6で 2.0 の目盛りより上にあるのは⓪だけ,−2.0 の目盛りより下にあるのは②だけです。①は −1.5 と −2.0 の間なので基準に届かず,③は −1.0 と −1.5 の間なのでさらに届きません。ラベルのない点はすべて −2.0 と 2.0 の間にあります。よって外れ値は⓪と②の2個で,オ=2。
[カ]を横軸で確定する。P県を特定するには,図5と図6を対応づけます。
手順1:P県の点は回帰直線より下にある。残差が負なので,図6では0.0の点線より下。⓪は0.0より上なので除外。
手順2:P県の推定値を回帰式から数値で押さえます。図5のP県の点は,学業が400の目盛りより右で,400と500の中間(450にあたる位置)より左。y = −0.14x + 491.17 は x が大きいほど小さくなるので,x=450 のとき最小で 491.17 − 63 = 428.17,x=400 のとき最大で 491.17 − 56 = 435.17。つまりP県の推定値は 428.17 と 435.17 の間にあります。
手順3:この数値と,各点の横軸位置を突き合わせます。②は横軸が410と420の目盛りの間,③は380と390の目盛りの間で,どちらも 428.17〜435.17 とは重なる部分がありません。よって②も③もP県ではありません。
手順1で⓪が,手順3で②と③が消えました。P県は⓪〜③のいずれかであると問題文が保証しているので,消去法で残る①がP県です。カ=1。なお①の横軸位置は図から「430と440の目盛りの間」としか読めず,そこから推定値が 428.17〜435.17 に入ることまでは言えません(たとえば438なら430と440の間でも範囲外です)。だからここは「①がこの範囲に収まるから①」ではなく,「他が全部消えるから①」という順序で決めます。
③が図5のどの点かも確かめておく。③は図6で横軸が最も左=推定値が最も小さい点。回帰直線の傾きが負なので,推定値が最も小さい県は学業の時間が最も長い県です。図5で最も右にある点(学業が700の目盛りより右)がそれにあたります。実際,学業が700より大きければ推定値は 491.17 − 0.14×700 = 393.17 より小さくなり,③の横軸位置(380と390の目盛りの間)と整合します。P県の推定値の範囲とはまったく重ならないので,手順3の結論と食い違いません。
「図5で最も下にある点」を②だと決めつけない。②は図6で最も下にある点,つまり残差が最も大きく負の点です。ここから「=図5で最も下にある点」と一足飛びに結ぶのは危険で,この2つは一般には別物です。回帰直線が右下がりなので,右側では直線そのものが低い位置にあり,低い点でも直線には近いということが起こるからです。しかもその反例は,この図の中で確かめられます。図5で最も右にある点は,P県の点より低い位置にあります。ところが図6を見ると,その点にあたる③の変換値は −1.0 と −1.5 の間で,P県にあたる①の変換値(−1.5 と −2.0 の間)より上。低い方の点の残差の方が浅いのです。縦の高さで残差の深さを判断してはいけません。だからカの判定は,残差の深さではなく手順2・手順3の横軸(推定値)で行うのが安全です。
Q県で対応づけの向きを検算する。図5でQ県の点は回帰直線より上にあり,残差は正。図6でもQ県の点は0.0の点線より上にあります。符号の対応が取れているので,「直線より上なら図6でも上」という読み方で間違いありません。さらに図5でQ県の推定値は 406.8 と示されており,図6でもQ県は横軸 406.8 の破線の上に置かれています。2つの図の対応が正しく取れていることが確認できます。
[キ]の確認。P県=①の変換値は −1.5 と −2.0 の間で,−2.0 の目盛りより上。絶対値は2に届いていません。したがって,この基準ではP県は外れ値になりません。キ=1。
②(どちらともいえない)を選んでしまう誤読。「回帰直線から大きく離れている県が多い」という本文の記述に引きずられて,P県も判定保留だと考えると②を選びます。しかし本問は「平均値から標準偏差の2倍以上離れた値を外れ値とする」という基準を明示しています。基準がはっきり与えられている以上,変換値を基準と比べれば判定は一意に決まり,どちらともいえない場面にはなりません。
ここで効く一般則・学問的背景
・残差=実際の値 − 推定値。回帰直線より上なら正,下なら負。この符号の対応は,2つの図を行き来するときの一番確実な手がかりになります。
・散布図で低い位置にある点と,回帰直線から下方向に最も離れた点は別物です。直線が右下がりのとき,右側では直線自体が低いので,低い点でも残差は浅いことがあります。実際,図5で最も右にある点(=③)はP県の点(=①)より低い位置にありながら,図6の変換値は①より上でした。「散布図で一番下=残差が一番負」と読み替えるのは誤りです。
・図5と図6を対応づけるときは,縦の高さ(実測値)ではなく横軸(推定値)で照合する。推定値は回帰式で計算できるので,点の横位置さえ押さえれば推定値を数値の範囲として求められ,その範囲と重ならない候補を目分量に頼らず除外できます。
・標準化(平均0・標準偏差1に変換)すると,値そのものが「平均から標準偏差の何倍離れているか」になる。だから「標準偏差の2倍」という基準は「変換値 ±2」の水平線を引くだけで判定できます。
・回帰直線の傾きが負のとき,推定値の大小関係は説明変数の大小関係と逆になる。図6の横軸で左にある点ほど,図5では右にあります。傾きの符号を確認せずに「左は左」と対応づけると誤ります。
・外れ値の基準は一つに決まっていません。四分位範囲を使う基準(第1四分位数から1.5×四分位範囲より下,など)と,標準偏差を使う基準(平均±2×標準偏差の外,など)では,外れ値と判定される県が変わることがあります。だから「どの基準で言っているのか」を必ず明示します。この設問が基準をわざわざ本文に書いているのは,そのためです。
・変換値の絶対値が大きいことは,「その県が異常だ」という意味ではありません。学業の時間だけでは説明しきれない何かがある,というだけです。本文の最後に「学業の時間以外の他の要因の影響についても考え」とあるのは,まさにその姿勢を示しています。
学問的背景。「回帰」という言葉は,19世紀のフランシス・ゴルトンが親子の身長を調べ,背の高い親の子は親ほどは高くなく平均へ戻る(regress する)傾向を見つけたことに由来します。回帰直線を数学的に決める最小二乗法は,19世紀初頭にルジャンドルとガウスが天体の軌道計算のために整えたもので,残差の2乗和を最小にする直線を選びます。この「残差を見て,直線で説明しきれなかった部分を調べる」という手続きは残差分析と呼ばれ,回帰分析の質を点検する標準的な作業になっています。残差を実測値ではなく推定値に対してプロットするのが定石なのも,図6と同じ発想です。標準偏差の2倍・3倍を境に外れ値を疑うやり方は,工場の品質管理で使われる管理図(シューハート,1920年代)にも受け継がれています。情報Ⅱでは,複数の説明変数を使う重回帰分析や,予測モデルの当てはまりの評価(決定係数など)へと発展していきます。
📕 『藤原進之介の ゼロから始める情報I』(KADOKAWA) 第4章 情報通信ネットワークとデータの活用 に対応します。
この試験で問われた単元を、基礎から学び直す
解けなかった設問は「知識が無い」のではなく「その単元の型を知らない」だけのことが多いです。該当する講義で型を入れてから戻ってきてください。
第3問(プログラミング)を基礎から
- アルゴリズムと流れ図第47講
- 共通テスト用プログラム表記③ 条件分岐第50講
- 共通テスト用プログラム表記④ 反復第51講
- 共通テスト用プログラム表記⑤ 配列第52講
- ユーザ定義関数と引数第53講
- トレース──プログラムを手で追う第54講
- 線形探索と二分探索
- 整列(ソート)の違いと比較回数
第4問(データの活用)を基礎から
- データの整理・整形(欠損値・外れ値)第82講
- 代表値(平均値・中央値・最頻値)第83講
- 散らばり(分散・標準偏差・四分位)第84講
- ヒストグラムと箱ひげ図第85講
- 散布図と相関係数第86講
- 相関と因果は違う第87講
- 回帰直線と最小二乗法第88講
第1問・第2問(小問集合)の分野を基礎から
情報ラボの学習コンテンツ
- 2026年度 共通テスト「情報Ⅰ」本試験 全問解説全18問・問題文つき
- 令和7年度 共通テスト「情報Ⅰ」試作問題 全問解説全19問・問題文つき
- 2025年度 共通テスト「情報Ⅰ」追試験 全問解説全19問・問題文つき
- 2026年度 共通テスト「情報Ⅰ」追試験 全問解説全24問・問題文つき
- 令和7年度 共通テスト「情報」サンプル問題 全問解説全11問・問題文つき
- 共通テスト「情報Ⅰ」オリジナル予想問題全10問・問題文つき
- 大学入試「情報」過去問プリント 一覧12大学・全149問
- 情報Ⅰ 最強120講義単元別の体系学習
- 情報Ⅰ・情報関係基礎の過去問PDF一覧共通テスト・私大
- 情報ラボとは(情報Ⅰ・Ⅱ専門オンライン個別指導)
- 情報ラボの料金とご利用の流れ
大学別「情報」過去問 解答解説
- 日本大学 文理学部 公開問題 2025全3問
- 北海道情報大学 一般選抜 サンプル問題 2025全14問
- 東北学院大学 一般選抜 サンプル問題 2025全12問
- 武蔵野大学 全学部統一選抜 2026全12問
- 武蔵野大学 一般選抜A日程(2/4) 2026全13問
- 武蔵野大学 一般選抜A日程(2/6) 2026全14問
- 京都産業大学 公募推薦入試 2026全12問
- 京都産業大学 一般選抜入試(前期日程) 2026全25問
- 京都産業大学 情報入試模擬試験 2024全7問
- 明治大学 情報コミュニケーション学部 情報総合問題 2020全7問
- 慶應義塾大学 SFC 総合政策学部 2019全15問
- 慶應義塾大学 SFC 環境情報学部 2019全15問
この解説は,オンライン数学専門塾数強塾の情報科目専門塾「情報ラボ」が制作しています。監修は藤原進之介(株式会社数強塾 代表取締役/『藤原進之介の ゼロから始める情報I』KADOKAWA 著者)。解答・配点は大学入試センター公表の正解表と全記号を照合済みです。
解き終えたら、同じ型のオリジナル予想問題へ
この年度の出題を含む公表6セットを分析し、同じ形式・同じ配点で作った完全オリジナルの予想問題です。過去問を解き切ってしまった人の演習材料に。
第3問(プログラミング)予想問題 大問10回分 / 第4問(データの活用)予想問題 大問10回分 / 第1問・第2問(小問集合)予想問題 4回分
他の回の全問解説
共通テスト「情報Ⅰ」の本試験・追試験・試作問題と、情報関係基礎の全問解説を1ページにまとめています。市販の演習材料が少ない科目なので、公開分を全部使い切るのが確実です。
共通テスト「情報Ⅰ」・情報関係基礎の全問解説(一覧) / 情報Ⅰ 最強120講義で用語に戻る / 共通テスト数学の全問解説
