2026年4月27日
フローチャートが読めれば、テストの得点源になる
情報Ⅰのテストでは、フローチャート(流れ図)を読んで答える問題がよく出ます。
フローチャートとは、プログラムの処理の流れを図で表したものです。記号の意味と読み方を覚えれば、テストで確実に点が取れるようになります。
この記事では、フローチャートの基本記号、テストでよく出るパターン、そしてフローチャートからコードに変換する方法を解説します。最後に練習問題もあるので、テスト前の確認に使ってください。
フローチャートの基本記号5つ
フローチャートで使う記号は5つだけです。形で意味が決まっています。
① 端子(角丸の長方形)— 開始と終了
プログラムの「開始」と「終了」を表します。フローチャートの一番上と一番下に置きます。
② 処理(長方形)— 計算や代入
「合計 ← 合計 + i」のような計算や代入を表します。
③ 条件分岐(ひし形)— Yes/Noの判断
「i < 10 ?」のような条件を書き、Yesの場合とNoの場合で矢印が分かれます。
④ ループ(六角形 or 台形)— 繰り返し
「i を 1 から 10 まで繰り返す」のような繰り返し処理を表します。
※教科書によって記号が異なる場合があります。
⑤ 矢印(→)— 処理の流れ
上から下に向かって処理が進むことを示します。条件分岐では左右に分かれます。
💡 テストでの注意点:
- 矢印の方向に沿って読む(基本は上から下)
- ひし形(条件分岐)では「Yes」と「No」のどちらに進むか必ず確認する
- ループの開始と終了の位置を確認する
テストでよく出るフローチャート3パターン
パターン① 合計を求める
開始
↓
合計 ← 0
↓
i を 1 から 5 まで繰り返す
合計 ← 合計 + i
↓
合計 を表示する
↓
終了
結果: 合計 = 1+2+3+4+5 = 15
見分け方: 「合計 ← 合計 + 〇〇」という処理がループの中にある
パターン② 最大値を求める
開始
↓
データ ← [3, 7, 2, 9, 4]
最大値 ← データ[0]
↓
i を 1 から 4 まで繰り返す
データ[i] > 最大値 ? ─Yes→ 最大値 ← データ[i]
└No→ (何もしない)
↓
最大値 を表示する
↓
終了
結果: 最大値 = 9
見分け方: ループの中に「もし 値 > 最大値 ならば 最大値 ← 値」がある
パターン③ 条件に合うデータを探す(線形探索)
開始
↓
データ ← [5, 8, 3, 7, 2]
探す値 ← 7
見つかった ← false
↓
i を 0 から 4 まで繰り返す
データ[i] = 探す値 ? ─Yes→ 見つかった ← true
└No→ (何もしない)
↓
見つかった ? ─Yes→ 「見つかった」を表示
└No→ 「見つからなかった」を表示
↓
終了
結果: 「見つかった」を表示(データ[3] = 7)
見分け方: ループの中に「もし データ[i] = 探す値 ならば」がある
📖 変数と条件分岐の基礎は「情報Ⅰのテストで出る「変数」「条件分岐」がわからない人へ」で図解しています。
フローチャートからコードに変換する方法
フローチャートの各記号は、コードの構文に1対1で対応します。
- 処理(長方形)→ 代入文
- 条件分岐(ひし形)→ if文
- ループ(繰り返し)→ for文
変換の例:合計を求めるフローチャート → JavaScript
let total = 0;
for (let i = 1; i <= 5; i++) {
total = total + i;
}
console.log(total);
テストでは「フローチャートを見てコードの空欄を埋める」問題が出ます。記号とコードの対応を覚えておきましょう。
🔗 if文の書き方は「JavaScriptのif文入門」で学べます。
📖 ループの書き方は「JavaScriptのループ処理入門」で学べます。
練習問題(3問)
テスト前に解いてみましょう。答えは問題の下にあります。
問題1
次のフローチャートを実行したとき、表示される値を答えなさい。
開始 → x ← 10, y ← 3
↓
x > y ? ─Yes→ z ← x - y
└No→ z ← y - x
↓
z を表示する → 終了
問題2
次のフローチャートを実行したとき、表示される値を答えなさい。
開始 → カウント ← 0
↓
i を 1 から 10 まで繰り返す
i を 2 で割った余り = 0 ? ─Yes→ カウント ← カウント + 1
└No→ (何もしない)
↓
カウント を表示する → 終了
問題3
次のフローチャートは何をするプログラムか、日本語で説明しなさい。
開始 → データ ← [4, 8, 2, 6, 1], 最小値 ← データ[0]
↓
i を 1 から 4 まで繰り返す
データ[i] < 最小値 ? ─Yes→ 最小値 ← データ[i]
└No→ (何もしない)
↓
最小値 を表示する → 終了
答え
- 問題1: 7(10 > 3 はYes → z = 10 - 3 = 7)
- 問題2: 5(1〜10の偶数は 2,4,6,8,10 の5個)
- 問題3: 配列データの中から最も小さい値(最小値)を見つけて表示するプログラム
まとめ
- ✅ フローチャートの基本記号は5つ(端子・処理・条件分岐・ループ・矢印)
- ✅ テストでよく出るパターンは「合計」「最大値」「探索」の3つ
- ✅ 「合計 ← 合計 + 値」→ 合計パターン、「もし 値 > 最大値」→ 最大値パターン
- ✅ フローチャートの各記号はコードの構文に1対1で対応する
- ✅ 条件分岐(ひし形)は必ずYes/Noの両方の行き先を確認する
- ✅ 練習問題はノートにトレースしながら解く
あわせて読みたい記事
- 情報Ⅰのプログラミング対策 — 共通テスト全体の対策と学習プラン
- 情報Ⅰの中間テスト対策!プログラミング問題の解き方 — 穴埋め・トレース・アルゴリズム説明の3パターン攻略
- 情報Ⅰのテストで出る「変数」「条件分岐」がわからない人へ — 変数と条件分岐を図解で解説
- 高校「情報」のテスト勉強法! — テスト前の勉強スケジュール
- 情報Ⅰの期末テスト対策!ネットワーク・データ活用の要点まとめ — ネットワーク分野の対策
⚡ JavaScriptでアルゴリズムを体験しよう!
フローチャートで学んだ処理を、実際にJavaScriptで書いて動かしてみましょう。完全無料・登録不要。
JavaScriptレッスン1を始める →