図 4 学ぶために必要な科目・学問学ぶために必要な科目 3
情報・論理
問題を小さな手順に分け、条件をあいまいさなく言葉にする。高校の情報 I・II と国語で身に付ける力は、大学の論理学やアルゴリズムの授業の土台になります。

ひとことで言うと
部活の練習メニューを、後輩にも伝わるように書く
「いい感じに走る」では、人によって受け取り方が違います。「400 m を 90 秒以内で 3 本、間に 2 分休む」と書けば、だれが読んでも同じ練習になります。コンピュータに仕事を頼むときも、条件と順番をあいまいさなく書くことが必要です。

01
情報 I・II: プログラミング・データ・ネットワーク
情報 I は、2022 年度に高校に入学した人から、全員が学ぶ必履修の科目になりました。内容は 4 つあります。まず「情報社会の問題解決」と「コミュニケーションと情報デザイン」です。さらに「コンピュータとプログラミング」と「情報通信ネットワークとデータの活用」を学びます。
選択科目の情報 II では、データサイエンスや、情報システムをチームで開発する方法まで学びます。多くの大学では、これらが 1 年のプログラミング入門や、2 年のアルゴリズムとデータ構造につながります。3 年のデータベースやネットワークの授業の土台にもなります。
大学入学共通テストでは、2025 年 1 月の試験から「情報 I」が出題されています(試験時間 60 分・100 点)。国立大学協会は、この試験から「情報」を加えた 6 教科 8 科目を課すことを原則にしています。2022 年 11 月に公表された試作問題には、論理回路の真理値表を考える問題がありました。金額を最も少ない枚数の硬貨で表す、プログラムの問題も出されています。
情報 I の 4 つの内容は、どれも大学の授業の入口になっています。
図解高校の情報と大学の授業
情報 I(必履修)
- プログラミングの基本
- データの集め方と分析
- ネットワークのしくみ
情報 II(選択)
- データサイエンス
- 情報システムの開発
- 問題の発見・解決の探究
大学の授業の例
- プログラミング入門
- アルゴリズムとデータ構造
- データベース・ネットワーク

02
AND・OR・NOT: コンピュータの中の論理
コンピュータの中の計算は、すべて「かつ(AND)」「または(OR)」「でない(NOT)」の組み合わせでできています。数学 I の「集合と命題」で学ぶ「かつ」「または」と同じ考え方で、真(1)か偽(0)かを計算します。これを論理演算と呼びます。
イギリスの数学者ジョージ・ブールは、1854 年の著書『思考の法則』で、論理を式で計算する方法を示しました(ブール代数)。それから約 80 年後、日本電気(NEC)の技術者だった中島章が、同じ法則を見つけ出します。交換機などのリレー回路を設計する中で見つけたものでした。当時、中島はブール代数の存在を知らなかったと伝えられています。
その 2 年後、アメリカのクロード・シャノンも同じ内容の論文を発表し、こちらが世界で広く知られるようになりました。今のコンピュータの回路も、この考え方で設計されています。たとえば 1 けたの 2 進数どうしの足し算では、1 の位を XOR(片方だけ 1)で求めます。繰り上がりは AND(両方 1)で求められます。
AND・OR・NOT の組み合わせだけで、足し算も、画面の表示も動いています。

03
順次・分岐・反復: 手順を組み立てる
プログラムの手順は、上から順に進む「順次」、条件で分かれる「分岐」、同じ処理をくり返す「反復」の組み合わせで書けます。情報 I のプログラミングでも、この 3 つを使って手順を組み立てます。
試作問題にもあった、金額をできるだけ少ない枚数の硬貨で表す問題を考えます。760 円なら、使える一番大きな硬貨から順に選びます。500 円 1 枚、100 円 2 枚、50 円 1 枚、10 円 1 枚で、合計 5 枚です。「大きい硬貨が使えるか確かめる」をくり返す、分岐と反復の組み合わせです。
ところが、硬貨が 1 円・3 円・4 円の 3 種類しかない仮の国を考えます。6 円を大きい順に選ぶと「4 + 1 + 1」の 3 枚ですが、「3 + 3」なら 2 枚で済みます。大きい順に選ぶ方法(貪欲法)は、いつも正しいとは限らないのです。どんな場合に正しいかを証明し、正しくないときの別の方法を考えるのが、大学のアルゴリズムの授業です。
手順を機械に指示するという考え方は古くからあります。1804 年ごろにフランスのジャカールが作った織機は、穴の開いたカードの並びで、布に織る模様を指示しました。
手順を書いたら、うまくいかない例がないかを疑ってみることが大切です。
図解硬貨の枚数を少なくする手順
- 1500 円 → 1 枚(残り 260 円)
- 2100 円 → 2 枚(残り 60 円)
- 350 円 → 1 枚、10 円 → 1 枚(残り 0 円)


04
国語の力: 誤解されない条件を書く
システムを作る仕事では、プログラムを書く前に「何を作るか」を文章にまとめます。この文書を仕様書と呼びます。仕様書があいまいだと、作る人によって違うものができてしまいます。
たとえば日常の「ケーキまたはアイスが付きます」は、どちらか一方の意味です。一方、論理学の OR は「両方でもよい」の意味です。仕様書では「少なくとも一方」「どちらか一方だけ」のように書き分けます。
否定の文にも注意が必要です。「会員で、かつ 1,000 円以上」ではない人は、「会員でない、または 1,000 円未満」の人です。これは数学 I で学ぶド・モルガンの法則そのもので、条件の書きまちがいを見つけるのに役立ちます。
高校の国語の「現代の国語」や選択科目の「論理国語」では、主張と根拠の関係を確かめながら読みます。報告書のような実用的な文章を書く練習もします。こうした力は、大学で仕様書やレポート、論文を書くときの土台になります。
誤解されない文章を書く力は、そのまま正しい条件を書く力になります。
図解あいまいな条件と、はっきりした条件
あいまい
- ケーキまたはアイス
- 会員か 1,000 円以上
- 10 日までに申し込み
はっきり
- どちらか一方だけ選べる
- 少なくとも一方を満たせば対象
- 10 日 23 時 59 分までの受付分

05
苦手でも大丈夫: どこから始めるか
プログラミングや論理が苦手だと感じても、特別なひらめきが必要なわけではありません。手順を小さく分けて 1 つずつ確かめる力は、練習を重ねれば身に付きます。
最初は、パソコンの操作より「考えること」に集中できる問題がおすすめです。小中高生向けの国際コンテスト「ビーバーチャレンジ」では、コンピュータ科学に関係する親しみやすい問題が出されます。過去の問題は Web で試せます。教科書の内容を確かめたいときは、文部科学省が公開している「情報 I」の教員研修用教材も読めます。
国語が苦手な人は、身近な手順を文章にする練習から始められます。カップ麺の作り方や、駅から学校までの道順を、初めての人が迷わないように書いてみてください。あいまいな所が、自分で見つかるようになります。
大きな問題も、小さな手順に分ければ 1 つずつ解けます。
図解始める順番の例
- 1パズルで考えるビーバーチャレンジの過去問
- 2教科書を確かめる情報 I の順次・分岐・反復
- 3小さく作る10 行ほどのプログラムを書く
- 4説明する手順を文章にして人に見せる
高校生のうちに試せること
ビーバーチャレンジの過去問を解く
コンピュータ科学に関係するパズルのような問題に挑戦できます。本番は学校単位の申し込み(参加費は無料)ですが、過去の問題は Web で公開されています。高校 1 年はジュニア、2・3 年はシニアの問題を選びましょう。
ビーバーチャレンジ情報ページ共通テスト「情報」の試作問題を解く
大学入試センターの Web サイトで、試作問題と正解表が公開されています。論理回路やプログラムの問題を、時間を測って解いてみましょう。
大学入試センター 試作問題等券売機の動きを仕様書にする
学食の券売機や自動販売機の動きを、「お金が足りないとき」「売り切れのとき」まで含めて文章にまとめましょう。友だちに読んでもらい、迷う所がないか確かめると、仕様書を書く練習になります。
「情報・論理」に関連するコミュニティ
研究室・部活・サークルなど、全国の 102 件から探せます。
五十嵐研究室
東京大学(東京都)
情報理工学系研究科数理情報学専攻・計算的社会選択理論・アルゴリズム的ゲーム理論・五十嵐 歩美 准教授
鵜川研究室
東京大学(東京都)
情報理工学系研究科創造情報学専攻・プログラミング言語・仮想機械・鵜川 始陽 准教授

ソフトウェア分析学
岡山大学(岡山県)
工学部 情報・電気・数理データサイエンス系 情報工学コース・ソフトウェア工学・門田 暁人 教授
ソフトウェアの開発・利用・保守のデータを計測・分析し、開発の課題を実証的に解決する。

河原林研究室
東京大学(東京都)
情報理工学系研究科コンピュータ科学専攻・アルゴリズム・離散数学・理論計算機科学・河原林 健一 教授
小林研究室
東京大学(東京都)
情報理工学系研究科コンピュータ科学専攻・プログラミング言語・ソフトウェア検証・小林 直樹 教授

ソフトウェア工学研究室
九州大学(福岡県)
高度ソフトウェア工学・亀井 靖高 教授
よくある質問
高校で情報 II を選べなくても大丈夫ですか?
大丈夫です。情報 II は選択科目で、開設していない高校もあります。多くの大学では 1 年のプログラミング入門から始めるため、情報 I の内容を理解していれば学び始められます。
高校の授業で使うプログラミング言語は決まっていますか?
決まっていません。学校によって Python や JavaScript、ブロックを組み立てる Scratch などが使われます。共通テストは、どの言語を学んだ人でも解けるように、日本語を交えた独自の表記で出題されます。
文系でも論理の力は身に付きますか?
身に付きます。論理学は、哲学の授業として文系の学部でも教えられてきた学問です。国語で主張と根拠を整理する力は、条件を正確に書く力と同じ土台の上にあります。


