基本情報技術者の科目B対策|
20問100分を「アルゴリズム16問+情報セキュリティ4問」で攻略
IPA公式情報をもとに、科目Bの構成と擬似言語の読み方、アルゴリズム・情報セキュリティ両分野の攻略ポイントを整理します。
科目B:100分・20問
アルゴリズムとプログラミング分野:16問/情報セキュリティ分野:4問
合格基準:科目Bの評価点が600点以上(1,000点満点)
※科目A(90分・60問・600点以上)との両方を満たすことが合格条件
科目Bは用語暗記では突破できません。IPAが示すとおり、アルゴリズムとプログラミングが中心であり、擬似言語で書かれたコードの処理を1ステップずつ追う力が問われます。「読める・追える・解ける」の3段階のうち、「追える」の段階で止まっている人が最も多いです。
科目Bの学習を始めた人から「テキストを読むと分かるのに、問題になると解けない」という声をよく聞きます。
これは「読める」段階で止まっていて、「変数の値を自分で追える」段階に達していないことが原因です。
解説を読んで理解するのと、何も見ずに変数の変化を紙に書き出せるのは別のスキルです。
※ 本記事では確認できた公式情報と資格ブートキャンプによる学習上の提案を分けて記載します。制度・日程・出題範囲・合格基準等は変更される場合があります。受験前に必ずIPA公式サイトで最新情報をご確認ください。
- 科目Bの出題構成(公式情報)
- 擬似言語が「読める」だけでは足りない理由
- アルゴリズム16問で得点するための演習の進め方
- 情報セキュリティ4問を取りこぼさない方法
- 資格ブートキャンプ独自の「科目Bの3段階習熟度モデル」
科目Bの出題構成(公式情報)
| 分野 | 出題数 | 内容 |
|---|---|---|
| アルゴリズムとプログラミング | 16問 | 擬似言語を用いたアルゴリズムの追跡・読解・実装問題 |
| 情報セキュリティ | 4問 | 認証・アクセス制御・脆弱性・暗号・攻撃手法などの知識・判断問題 |
| 合計 | 20問・100分 | 評価点600点以上(1,000点満点)で合格 |
擬似言語は「読む」より「追う」ことが重要
科目Bのアルゴリズム問題はPythonやJavaなどの特定言語ではなく、IPAが定める擬似言語で出題されます。変数・配列・条件分岐・繰り返し・関数という5つの要素が中心です。
文法を丸暗記する必要はありませんが、コードを見たときに変数の値が頭の中(または紙の上)で動かせることが得点の前提になります。
- 解説を読んで「分かった」で次へ進む
- 同じ問題を繰り返し解いて正解できるようになった気になる
- 計算ミスやカウントのズレに気づかないままトレースする
- 紙に変数名を書き、1ステップごとに値を更新しながらトレースする
- ループ系問題は「何周目に何が起きるか」を表で管理する
- 別の問題で同じアルゴリズムパターンに気づけるか確認する
資格ブートキャンプ独自整理|科目Bアルゴリズム問題の「3段階習熟度モデル」
科目Bのアルゴリズム問題は、同じ問題でも「どのレベルで解けているか」によって本番での再現性が大きく変わります。資格ブートキャンプでは、アルゴリズム習熟度を次の3段階で整理しています。
コードを見て「こういう処理をしているんだな」と読み取れる段階。解説を読めば「確かにそうだ」と納得できる。
→ このレベルで止まっていると本番で詰まります。解説があれば分かるのに、問題単独では解けない人のほとんどがこの段階です。
何も見ずに変数の変化を紙に書きながら正解にたどり着ける段階。ループのカウントや配列の添字をミスなく追える。
→ 合格ラインに必要な最低レベルです。演習で毎回紙にトレースする習慣があれば到達できます。
見たことのないパターンや変数名が変わった問題でも、アルゴリズムの構造を認識して処理を追える段階。「このコードはバブルソートの変形だ」と気づける。
→ 得点を安定させるにはこのレベルが理想です。演習後に「このパターンは何をしているコードか」を一言で言語化する習慣で到達しやすくなります。
WEB版問題演習でアルゴリズム問題を解いた後、「自分は今レベル1・2・3のどれか」を問題ごとに記録することをおすすめします。レベル1で止まっている問題だけを集中的にトレース練習することで、演習の効率が大きく上がります。
アルゴリズム16問の攻略——頻出パターンを押さえる
16問すべてが異なるパターンで出題されるわけではありません。基本的なアルゴリズムのパターンを押さえると、初見の問題でも構造を見抜きやすくなります。
| 頻出パターン | 問われること | 練習のポイント |
|---|---|---|
| 配列の探索・走査 | 配列のどの要素が条件に合うか・最大値・最小値を求める | インデックスの動きを表にして追う。「0始まり」か「1始まり」かを最初に確認 |
| ループと条件分岐の組み合わせ | ループ何周目に条件が満たされるか・変数が何になるか | ループ1周ごとの変数値を縦に並べた表を書く。breakの位置に注意 |
| 整列(ソート) | バブルソート・選択ソート・挿入ソートの処理過程 | 各ステップ後の配列の状態を書き出す。「何回目の交換で終わるか」を追う |
| 再帰処理 | 関数が自分自身を呼び出す処理のトレース | 呼び出しのたびに「引数の値→戻り値」を積み上げて書く。スタック図が有効 |
| 文字列・リスト操作 | 文字列の検索・置換・連結、リストへの追加・削除 | 操作前後の状態を図示する。添字のずれに注意 |
情報セキュリティ4問は確実に取りこぼさない
4問しかないからと後回しにすると、アルゴリズムで想定外の難問が続いたときに600点ラインが危うくなります。比較的知識整理で対応しやすい分野なので、早めに仕上げておくのがおすすめです。
| テーマ | おさえるポイント |
|---|---|
| 認証・アクセス制御 | 多要素認証の要素の種類(知識・所持・生体)、アクセス制御モデルの違い(DAC・MAC等) |
| 暗号化 | 共通鍵・公開鍵の特徴と使い分け、デジタル署名・PKIの仕組み |
| 脆弱性・攻撃手法 | SQLインジェクション・XSS・DoS攻撃などの攻撃と対策のセット |
| リスクマネジメント・インシデント対応 | リスクの4対応(回避・低減・移転・受容)、インシデント対応手順の流れ |
- 擬似言語の変数・配列・条件分岐・ループ・関数の動作を紙でトレースできるか
- 配列探索・整列・再帰の3パターンを白紙から自力で追えるか
- 情報セキュリティの主要攻撃手法と対策をペアで説明できるか
- IPAが公開している実際の問題で時間内に解き切れるか確認したか
- 100分で全20問を解いた場合の時間感覚を模擬演習で確認したか
よくある質問(FAQ)
独立行政法人 情報処理推進機構(IPA):基本情報技術者試験
制度・日程・出題範囲・合格基準等は変更される場合があります。受験前に必ずIPA公式サイトで最新情報をご確認ください。
科目Bの演習を今日から始めよう
まずWEB版問題演習でアルゴリズム問題を解き、「読める・追える・解ける」の3段階のどこで止まっているかを確認してください。
