ついに始まる!高校生に問われる新たな力!大学入学共通テスト「情報」の問題が面白い?
〜未来を創る高校情報:デジタル社会を生き抜くための新たな学び〜
こんにちは。みんなのコード永野です。
今回の記事は、「未来を創る高校情報:デジタル社会を生き抜くための新たな学び」シリーズ最終回になります。
4回目は政策提言部の田嶋さんによる「そもそも大学入学共通テスト全体はどのように変わるの?」と番外編でしたが、私が担当した3回目の記事では、2025年度の大学入学共通テストから「情報」が新設され、国公立大学では原則必須科目となることについて書きました。
これを受けて、「大学入試でプログラミングが出題されることに!」といった報道もたくさんされました。もちろん試験内容は、プログラミングだけではないのですが、共通テスト「情報」ではどんな問題が出題されるのでしょうか。サンプル問題・試作問題の内容についてみていきましょう!
過去の関連記事はこちら
「本当に ”みんな” が高校で「情報」を学ぶ必要があるか」を考えてみる
20年近くずっと必修?高等学校の教科「情報」は何が変わったのか
大学入学共通テスト「情報」の試験はやるけど、配点はしない?
そもそも大学入学共通テスト全体はどのように変わるの?
※この記事はみんなのコードコーポレートサイトからの転載です。
ひと口に言ってどんな問題か
まず、結論から書いてしまうと、公開されたサンプル問題や試作問題を見て、私は「非常に良問」だと思っています。
私が数十年前に受けた「入試」は、とにかく知識が重要でした。過去問をはじめとした問題演習をどれだけこなすかが重要であったような気がします。
「情報」が入試科目になるというニュースを聞いた時、「情報」が「入試に関係ないから・・」と言う理由で軽視されたり、ひたすらビジネスソフトウェアを操作したりする授業はなくなるだろうと感じました。
しかし同時に、「思考力・判断力・表現力」や「探究的に学ぶ」ことが重視されてきている現代において、マークシート方式のペーパーテストで本来「情報」が目指すべき学習内容が計れるのだろうか・・という懸念があったのも事実です。
ところが・・一通りサンプル問題や試作問題を私もやってみて感じたのは、問われているのはまさに「情報」で育成する「問題解決能力」そのものである!ということでした。
「暗記している重要語句を思い出せれば正解」と言う問題はほとんど、いや皆無であると言っても過言ではありません。
問題の中で与えられた前提条件を基に、まさにその場で思考・判断しながら問題解決する力が問われているのです。
ワープロや表計算、プレゼンテーションソフトの使い方に終始する授業では、1問も解ける問題はありません。
どんな問題か
次に、どんな問題であるか見ていただきたいと思います。
「サンプル問題」とは試験のイメージを示したもので、内容の分量や配点などは考慮されていないものです。
「試作問題」はより本試験に近い形で、60分、100点満点の想定で作成されたものとなっています。
まずはサンプル問題、冒頭の問1の問題についてみてみましょう。
この問題では、「インターネットと電話の通信方式の違い」について扱っています。つまり「回線交換方式」と「パケット交換方式」の違いについてです。
いわゆる知識を問う問題であれば、例えばこんな問題が考えられます。
「インターネット通信は電話の通信方式と比較して通信不能になりにくい性質がある。この通信方式を何と言うか」
1. 回線交換方式
2. PPPoE方式
3. パケット交換方式
4. パラレル通信方式
みたいな問題ですね。
期末試験とかで、いかにも作ってしまいそうな問題です。
この問題は、「インターネットの通信方式はパケット交換方式」と覚えていれば答えられます。逆にこれらの言葉を知らなければ、いくら考えても答えようがありませんね。1/4に賭けるしかありません(笑)
しかし、実際の問題はこうでした。
正解は「2」と「3」です。
つまり、「パケット交換方式」という用語ではなく、「なぜ電話より混雑時の通話不能に対してインターネットの方が強いのか」という理由が問われています。単に通信方式の名称を答えるのではなくて、「その意味」、そして「インターネットの通信方式の特徴が社会の出来事においてどんな現象となって現れたのか」を問うています。
東日本大震災は、すでに10年以上が経過しており、今の高校生にとっては小学校低学年の頃であったと思います。しかし、若い世代を含め、我々が決して忘れてはならない出来事です。この問題文中にもあるように、インターネット通信がライフラインとして強く意識されたという側面もありました。
プログラミングの問題は?
続いて、プログラミングの問題を見てみましょう。
同じくサンプル問題から引用します。
これは「政治・経済」の問題ではありません。「情報」のプログラミング問題です。
比例代表選挙の「ドント方式」について、どのような順序で当選者が決まっていくかプログラムで再現してみよう、という問題です。
「ドント方式」について知らないと答えられない、と言うことはありません。問題文の中で、先生と生徒の会話形式でその手順が丁寧に説明されます。この会話を基に、当選までに至る手順をプログラムの形に表現していきます。
問題文のプログラムはこのようなものです。
変数やデータ、演算以外は日本語で表されています。これは「共通テスト手順記述標準言語」と呼ばれる共通テストで用いられるプログラムの記述形式です。
「情報」の授業ではプログラミングを学びますが、「どの言語を使うか」は学習指導要領で指定されていません。学校や生徒の状況に合わせてさまざまなプログラミング言語が用いられます。
特定の言語を学んだ生徒だけが有利にならないための配慮がなされているのです。
では、「試作問題」の方のプログラミング問題を見てみましょう。
非常に面白い問題だと思いませんか?
情報の試験で「買い物」ときましたから電子マネーにまつわる問題かな、と思ったら「現金での上手な払いかた」でした。実際の価格にいくらか足してキリのいいお釣りをもらうのが上手な人がいますよね。電子マネーの普及でそんな場面は減っているかもしれませんが、考え方を工夫するという題材で面白いですね。
「ある価格の商品を買う時、『払う枚数』と『お釣りの枚数』を最小化するにはどんなプログラムになるか」を考える問題です。
どんな価格でもサッとわかったらかなり便利なプログラムになりそうです。
上記はプログラムの一部ですが、この問題についても、先生と生徒の会話を基に処理すべき手順が説明されていきます。とはいえ、会話からプログラムの形に表現しなおすために、やるべき処理手順をしっかりと頭の中にイメージできないといけません。
「情報」だけでなく、共通テストにすべてにおいて言えることなのですが、単に「問い」と「答え」という一問一答の形式ではありません。人同士の会話、グラフ、表など様々な情報から必要なものを取り出したり、組み合わせたりしながら考える形式が多いことがわかります。
わりと長い会話の文章から、「この人は何をしたいのか、そのためにはどの資料のどこを見るべきか」という文脈を把握するための読解力がかなり重要です。
サンプル問題は「教材」としても面白い!
高校3年生は選挙権を持つ歳となる生徒が多いため、「選挙」は非常に身近な話題です。単に「投票すれば良い」のではなくて、「どんなふうに当選者が決まるんだろう?」と疑問を持ち、「情報で」学んだプログラムで実際に試してみよう!なんて生徒がいたら本当に素晴らしいと思います。
「支払いとお釣り問題」も同様です。日常のちょっとしたこと、「ちょっと面倒だな」と思うことをプログラムで解決できないか?と考えるのはまさに情報技術の問題解決への適用です。
これらは入試のサンプル・試作問題ですが、実は「授業での教材ヒント」としても非常に参考になるということを強調したいと思います。
例えば試作問題の「最適な払い方」ですが、手順を簡潔にするために紙幣は考えず、購入する商品の価格も100円以下に限定するという設定になっています。
これを授業で、あらゆる価格や金種を利用できるより便利なプログラムに改良するというのも面白そうです。
どんな力が問われているのか
「情報I」におけるプログラミングの学習は「高度なプログラミングスキル」を習得することではないことが問題から読み取れます。
例えば、サンプル問題の「A党、B党、C党、D党」の各党の得票数を合計するという手順があります。問題の中では、繰り返し手順を用いて各党の得票数を取り出し、順次合計していくプログラムを作ることになっています。
(以下はプログラムのイメージです。よりわかりやすくするため「共通テスト手順記述標準言語」表記でもありません。)
各党の得票数 は (1200,660,1440,180)
得票総数の初期値は 0
m を 1 から 4 まで 1 ずつ増やしながら以下の処理を繰り返す:
得票総数 は 現在の得票総数 + 各党の得票数の[m]番目のデータ
繰り返し終わり
みたいなイメージですね。1番目のデータから4番目までのデータまでを得票総数に順番に加えていく処理が扱われています。
でも、プログラミング言語の機能で「数値を合計する」命令があれば、こんなイメージのプログラムで済んでしまいます。
投票総数の初期値は 0
得票総数 は 次の値の合計(1200,660,1440,180)
ExcelのSUM関数みたいな感じですね。これは楽です(笑)
このような合計を求める関数は多くのプログラミング言語に存在するのですが、サンプル問題の中では使われていません。
共通テストで問われるのは、
「特定のプログラミング言語の特定の命令」を知っていることではありません。
プログラムで実行する「必要な手順」を論理的に考えることができるか、が問われています。プログラムの簡潔さとか、どちらがより洗練されているか、と言ったら関数を使う方かと思います。
しかし、高等学校段階では、「必要な手順をプログラム的に表現する思考」が問われているのです。
便利な命令を使わず、1つずつ数値を足していくという処理は愚直な感じがしますが、プログラムの動作の上で、とても重要な基本的な動作です。この動き方が理解できていないと今後プログラムを作っていく上でもつまずいてしまうことでしょう。
データ活用の問題にしても、統計で用いられる複雑な計算やデータ分析に用いられる表計算の関数はほとんど出てきません。
データ活用については数学でも扱われ、学習指導要領では、「数学」と「情報」を連携させながら学ぶことが示されています。
「情報」においては、示された数値やグラフから、これが何を表し、そこからどんなことが読み取れるのか、という解釈が問われます。
この他にも、「文化祭での模擬店(クレープ屋)で、お客の来るタイミングと提供時間による待ち時間の違い」(試作問題)などの問題もあります。
面白そうだと思いませんか?
おわりに
ここまで長々と「情報」の入試について書いてきました。
「勉強」というのは「勉める、強いる」と言う漢字が使われます。なんだか「楽しくないけどやらなきゃいけないから」という義務感が感じられる言葉のように感じます。私の大学受験は確かにそうでした。
それはなぜかと言うと「何の役に立つかよくわからないけど、大学受験のためにはやるしか仕方ない・・」という意識だったんだと思います。
実際には、後の人生に役立つことも沢山あるのですが、それに気づくのは数年後でした。
「情報」のサンプル問題、試作問題に一貫しているのは、
「身近な問題を情報技術で解決してみよう」というテーマです。
大学入学共通テスト、特にこの「情報」のサンプル・試作問題は、
「私たちが学んでいることってこんなふうに活用できるんだ」
ということを感じ取れるような問題である気がします。
それは、実は入試だけでなく、生徒の日々の授業にとってもとても大切な視点です。
「入試対策」をどうしたら良いかわからない、受験対策の時間が取れない・・という先生方の不安をよく耳にします。
しかし、大学入学共通テストのサンプル・試作問題を見る限り、いかに重要語句を暗記させるか、とか問題演習をどれだけ多くやらせるか、といった対策はあまり有効に働くように思えません。
最も効果的なのは、日々の授業において、「生徒にとって学ぶ意義を実感できるテーマを与え、自分で調べたり、他者と一緒に考えたり試したりしながら理解する学習をいかにして行うか」ということになるのではないでしょうか。
さらに、このことは「入試」に限った話ではありません。大学に行かずとも、「問題解決能力」「主体性」「協働性」「学び続ける姿勢」など、これからの時代を生きる子どもたちにとって重要な資質・能力を身につける学習が必要であると思います。
「入試科目」になったから「情報」が重要になったのではありません。
「情報」での学びがすべての人にとって重要だから「入試」にも加わったのです。
卵が先か、鶏が先か、みたいな話ですが、これはとても重要な視点だと思います。
予測のしにくい未知の課題が起きるであろう未来。
その時に、たくましく生きてより良い社会を創り出していく将来の大人、つまり今の子どもたちを私たち大人が手助けしながら、その資質・能力を伸ばしていかなければなりません。
私たちみんなのコードは、今後も「情報I」の確実な実施と未来を担う子どもたちのために、あらゆる支援をしていきます。
「情報I」に対応したオンラインPythonプログラミング教材「プログル情報」も無償で提供しています。
これからもどうぞよろしくお願いいたします。
(関連書籍)
思考力アップ 大学入学共通テスト「情報I」[なるほどラボ]
この記事が気に入ったらサポートをしてみませんか?