科目Bは「考える力」を問う試験
まず、科目Bがどんな試験かを整理します。
科目Aが「知識を広く問う」試験だとすれば、科目Bは「考える力を問う」試験です。覚えた知識をもとに、処理の流れを自分で追ったり、状況に合った対策を選んだりする。だから、用語を暗記しただけでは届きにくい。ここが「最難関」と呼ばれる理由です。
科目Bの中心は、大きく2つです。ひとつはアルゴリズム——擬似言語で書かれたプログラムの流れを読み解く問題。もうひとつは情報セキュリティです。
この2つ、実は性格がかなり違います。アルゴリズムは、じっくり考えて追いかける「思考型」。いっぽうセキュリティは、頻出の仕組みを押さえれば点を取りやすい「得点源型」です。
だから、同じ重さで身構える必要はありません。アルゴリズムにしっかり時間をかけ、セキュリティは効率よく拾う——この強弱が、科目Bを攻める基本の構えになります。
科目Bは「考える力」を問う試験。中心はアルゴリズム(擬似言語)と情報セキュリティの2本柱。アルゴリズムは時間をかける「思考型」、セキュリティは頻出を押さえる「得点源型」。重さを変えて攻めるのがコツです。
擬似言語は「プログラムの設計図」
アルゴリズムの話に入る前に、その入れ物である擬似言語を理解しておきましょう。ここが分かると、ぐっと怖さが減ります。
擬似言語というのは、ひとことで言うと「プログラムの設計図のような書き方」です。PythonやJavaといった特定のプログラミング言語そのものではありません。IPA(情報処理推進機構)が定めた、試験のための共通の書き方です。
なぜ、わざわざ専用の書き方を使うのか。それは、特定の言語を知らない人でも、処理の流れだけに集中できるようにするためです。つまり、「この言語を覚えていないと解けない」という不公平をなくす工夫なんですね。文系・未経験の人にとっては、むしろありがたい仕組みだと言えます。
擬似言語には、「もし〜なら」という条件分岐や、「〜の間くり返す」というループといった、基本のパーツがあります。たとえば擬似言語の制御構造で扱う、こうした流れの組み立て方を知っておくと、初めて見るプログラムでも、骨組みが読めるようになります。要するに、設計図の「記号の読み方」を先に覚えてしまえば、あとは中身を追うだけ、というわけです。
アルゴリズムは「トレース」で越える
さて、いよいよ核心です。アルゴリズム問題を、どう攻めるか。
ここで多くの人が誤解しているのが、「アルゴリズムは頭の中で一気に理解するもの」という思い込みです。これが、つまずきの最大の原因なんです。
おすすめするのは、トレースという方法です。トレースとは、擬似言語の処理を、一行ずつ手で追いかけること。具体的には、紙やメモに変数の値を書き出して、「この行で、この変数が3になった」「次の行で、5に変わった」と、値の動きを実際に書きながら進めます。
頭の中だけで追おうとすると、すぐにこんがらがります。でも、値を紙に書き出せば、処理の流れが目に見える形になる。すると、複雑に見えたプログラムも、「ただ手順を追うだけの作業」に変わるんです。わかりやすく言うと、暗算でやろうとして混乱していたものを、筆算に変えるようなイメージですね。
そして、出てくるパターンは、実は限られています。ソートアルゴリズムのような「並べ替え」や、データを探す「探索」、配列の中身を順に処理する操作など、定番の型を何度もトレースしておけば、初見の問題でも「あ、これはあの型だ」と当たりがつくようになります。
もうひとつ、トレースを楽にするコツがあります。それは、小さな値で試すことです。問題に大きな配列が出てきても、まずは「3つの数字だったらどう動くか」を自分で追ってみる。要素を減らせば、処理の流れがつかみやすくなります。
仕組みさえ見えれば、数が増えても同じことの繰り返しだと気づけます。むずかしく感じる問題ほど、いったん小さくして手で動かす——これが、行き詰まりを抜けるいちばんの近道です。
カギはトレース——変数の値を紙に書き出し、処理を一行ずつ手で追うこと。頭の中だけで追わず、目に見える形にするのが肝心です。ソートや探索など定番の型を繰り返しトレースすれば、初見の問題にも対応できるようになります。才能ではなく「追った回数」がものを言います。
情報セキュリティは「得点源」として固める
アルゴリズムにじっくり取り組むぶん、情報セキュリティは効率よく攻めます。ここは、科目Bの中では点を取りやすい得点源です。
セキュリティの問題は、頻出テーマがある程度決まっています。暗号や認証の仕組み、マルウェアの種類、攻撃の手口とその対策——こうした定番の知識をしっかり押さえておけば、選択肢を絞り込めるようになります。
たとえばハッシュ関数のような、データの改ざんを見つける仕組みを「何のために、どう使うのか」までイメージできていると、応用された問題でも対応できます。丸暗記ではなく、「この仕組みは、どんな困りごとを解決するのか」という目的とセットで覚えるのがコツです。
つまり、セキュリティは「考えて解く」より「知って選ぶ」の比重が大きい。だからこそ、アルゴリズムで頭を使い、セキュリティで着実に点を積む、という役割分担が効いてきます。両者の性格の違いを意識するだけで、科目B全体の見通しがよくなります。
それに、セキュリティで学ぶ知識は、合格後の毎日でも役に立ちます。なぜ怪しいメールを開いてはいけないのか、なぜパスワードの使い回しが危ないのか——その理屈が腑に落ちると、勉強が「試験のためだけのもの」ではなくなります。身近な話につながると、暗記も自然と楽しくなってくるものです。
越えるのは「才能」ではなく「触れた回数」
最後に、科目Bにいちばん大切な心構えをお伝えします。
それは、「才能の問題ではない」ということです。アルゴリズムが最初うまく追えないのは、当たり前のこと。プログラミング経験者だって、最初は一行ずつ指でなぞっていたんです。差がつくのは、センスではなく「触れた回数」です。
だから、一度で完璧に解けなくても、まったく落ち込む必要はありません。最初は一問に時間がかかってもいい。トレースを繰り返すうちに、だんだん速く、正確に追えるようになります。この「だんだんできるようになる」感覚こそ、科目Bの醍醐味だと、私は思っています。
なお、擬似言語の細かな書き方や出題の傾向は、シラバスの改定で見直されることがあります。学習を始める前に、受験する年度のIPA公式情報で最新の様式を確認しておくと確実です。
- 科目Bは「考える力」を問う試験。中心はアルゴリズムと情報セキュリティ
- 擬似言語は特定言語でなく「プログラムの設計図」。記号の読み方を先に覚える
- アルゴリズムはトレース(変数を紙に書き、一行ずつ手で追う)で越える
- 情報セキュリティは得点源。頻出の仕組みを「目的とセット」で押さえる
- 越えるのは才能でなく触れた回数。細部は受験年度のIPA公式で再確認
理解度チェック
ここまでの内容が、どれくらい身についたか確かめてみましょう。
科目Bで使われる「擬似言語」の説明として、正しいものはどれか。
- 特定の言語に依存しない、処理の流れを表す書き方
- PythonやJavaなど、特定の言語そのものである
- 文章で書かれた、暗記用の用語集のことである
- 図やイラストだけで処理を表す、特別な記号である
解答は 1 です。
擬似言語は、特定のプログラミング言語に依存しない、処理の流れを表すための共通の書き方です。つまり、特定の言語を知らなくても、流れだけに集中して解けるようにする工夫なんです。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✓ 正解 | 言語によらず流れを表す書き方 |
| 2 | ✗ 誤り | 特定の言語そのものではない |
| 3 | ✗ 誤り | 用語集ではなく処理の記述 |
| 4 | ✗ 誤り | 図だけで表す記号ではない |
設計図の記号の読み方を先に覚えるのが近道ですよ。
科目Bのアルゴリズム問題への向き合い方として、ここまでで触れたものはどれか。
- 答えを丸暗記して、本番でそのまま書き写す
- 擬似言語は読まず、選択肢だけ見て勘で選ぶ
- 変数の値を書き出し、処理を一行ずつ手で追う
- 一度で完璧に解けないなら、すぐにあきらめる
解答は 3 です。
アルゴリズムは、変数の値を紙に書き出して、一行ずつ手で追う「トレース」が基本です。わかりやすく言うと、暗算で混乱していたものを、筆算に変えるようなイメージですね。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ 誤り | 丸暗記では応用が利かない |
| 2 | ✗ 誤り | 擬似言語を読まずには解けない |
| 3 | ✓ 正解 | トレースで一行ずつ追う |
| 4 | ✗ 誤り | 越えるのは触れた回数 |
定番の型を繰り返しトレースすれば、初見でも当たりがつきますよ。
科目Bの情報セキュリティ分野について、ここまでの説明に合うものはどれか。
- アルゴリズムより難しく、捨てるしかない分野である
- 科目Bには出題されず、科目Aだけのテーマである
- 暗記がいっさい不要で、その場の勘で解ける分野だ
- 頻出テーマの仕組みを押さえれば、点を取りやすい
解答は 4 です。
情報セキュリティは、頻出テーマの仕組みを押さえれば点を取りやすい得点源です。要するに、暗号や認証などの定番を「目的とセット」で覚えると、選択肢を絞り込めるようになります。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ 誤り | 得点源で、捨てる分野ではない |
| 2 | ✗ 誤り | 科目Bの中心テーマの一つ |
| 3 | ✗ 誤り | 仕組みの理解と暗記が要る |
| 4 | ✓ 正解 | 頻出の仕組みで点を取りやすい |
アルゴリズムで頭を使い、セキュリティで着実に積むのがコツですよ。
「科目Bも、攻め方しだいで越えられそう」——そう思ってもらえたなら、編集部としてはとても嬉しいです。
アルゴリズムもセキュリティも、結局は「問題に触れた回数」が力になります。通勤の途中や寝る前に1問ずつ解いてみたい人は、シカクエのアプリも選択肢の一つに入れてみてください。1問1分のリズムで、5分から積み重ねられます。
もちろん、市販の問題集や無料の過去問サイトで、紙にトレースしながら進めるのも、とてもいいやり方です。大事なのは、一行ずつ手を動かして、無理なく続けていくことです。
次に読むなら、こんな記事もどうぞ。
→ 擬似言語の制御構造 — 条件分岐やループなど、処理の流れを組み立てる基本のパーツ → ソートアルゴリズム — データを並べ替える定番の手順。トレースで動きを体に入れたい → ハッシュ関数 — データの改ざんを見つける仕組み。セキュリティの頻出テーマの一つ