この章の学習目標
読み終えたら、できること。
- 「入力の形を確かめる」の意味と理由を、具体例で説明できる
- 「範囲と分岐を別々に追う」の意味と理由を、具体例で説明できる
- 「予想→実行→比較で直す」の意味と理由を、具体例で説明できる
章内を一度に読まず、見出しごとに例を説明してから先へ進んでも大丈夫です。
この章の目次
WHY / なぜ学ぶ?
身近な「なぜ?」から。
プログラムが動いたのに答えが違うとき、どこを調べればよいでしょう。入力の型、処理する範囲、分岐の内側、関数が返す値を切り分けると原因を追えます。書いた人の気持ちではなく、命令を上から実行した結果で考えます。
BIG PICTURE
この章の全体像をつかもう。
入力→処理→出力を基本に、処理を関数へまとめ、条件分岐と反復を組み合わせます。最後に、期待した値と実際の値を比べて誤りを調べます。構文が正しいことと、問題の目的を満たすことは別です。
アプリ教材の単元原図
まず、図で全体像をつかもう。
図の見出しと、下の本文の見出しを対応させて読みましょう。原図には発展事項も含まれます。この章の確認範囲は本文と代表3問です。
アプリ教材の制作原図を加工せず掲載しています。図の文字コードの固定バイト数などは例で、方式により異なります。本文の条件と併せて確認しましょう。本文は2026年10月に整理したWeb用解説です。
THREE KEYS
まず押さえるのは、3つ。
章の細かい用語は、この3つの考え方に結び付けて読み進めましょう。
入力の形を確かめる
見た目が12でも、入力値が文字列なら数値計算の前に変換が必要な場合があります。センサならAD変換などの役割も分けます。
たとえば:文字列の「2」と「3」を結合することと、数として2+3を計算することは違います。
範囲と分岐を別々に追う
反復が何回あっても、その中の処理が毎回行われるとは限りません。条件が真になった回だけを数えます。
たとえば:1〜6の奇数にだけ2点なら、1・3・5の3回で合計6点です。
予想→実行→比較で直す
出力の違いを見てから、途中の変数を調べます。小さな入力や境界値を試すと、ずれた場所を見つけやすくなります。
たとえば:0回反復、1回反復、最後の値を含む場合を分けてテストします。
THINK WITH A DIAGRAM
図を読みながら、考え方を追う。
| 確認する点 | 典型的な誤り | 直し方 |
|---|---|---|
| 型 | 文字列のまま計算する | 入力と変換を確認 |
| 範囲 | 終端まで含むと思う | 言語の反復規則を確認 |
| 更新 | 分岐の内側に置きすぎる | 毎回必要な処理を外に出す |
表が収まらない場合は横にスクロールできます。
3-4-1
入出力
プログラムは入力を受け取り、処理し、結果を出力します。入力が数字に見える文字列の場合は、計算に使う前に必要な型へ変換します。アナログ型センサの値をデジタルで処理するにはAD変換が必要です。センサ→ADコンバータ→入力部→コンピュータという役割の流れを考えましょう。
3-4-2
関数
関数は、まとまりのある処理に名前を付けて利用するものです。引数は渡す値、戻り値は返される値です。画面に表示することと、戻り値として返すことは違います。たとえば税込価格を返す関数なら、受け取る価格や税率、丸め方を決めることで同じ処理を使い回せます。
3-4-3
制御構造の組み合わせ
順次・分岐・反復を組み合わせると、条件に合うデータだけを数えられます。Pythonでfor i in range(1,6)ならiは1〜5です。その中でi % 2 == 0のときだけ10を足すと、i=2と4の2回で合計20になります。インデントが変わると処理の実行範囲も変わるため、行ごとに追いましょう。
3-4-4
エラーの原因
構文エラー、実行時のエラー、意図と違う結果になる論理上の誤りを分けて考えます。計算では、有限桁で近似する丸め誤差や、近い値同士の引き算で有効桁が失われる桁落ちにも注意します。テストは普通の値だけでなく、0や境界値などでも行い、予想と実際を比べます。
重要語句を整理しよう。
| 語句 | 意味 | 混同しやすい点 |
|---|---|---|
| 入力 | 外部から値を受け取ること。 | 文字列か数値かにも注意。 |
| 引数 | 関数を呼ぶときに渡す値。 | 関数の外から中へ渡す。 |
| 戻り値 | 関数が呼び出し元へ返す値。 | 画面への表示とは別。 |
| インデント | 行頭の字下げ。 | Pythonでは処理のまとまりを表す。 |
| 構文エラー | 言語の書き方の規則に反する誤り。 | 計算結果の誤りとは区別。 |
| 論理上の誤り | 実行できても意図と違う手順になっていること。 | 反復範囲や更新位置を点検。 |
| 丸め誤差 | 有限桁で近似して生じる誤差。 | 演算が必ず数学の厳密値と一致するとは限らない。 |
| 桁落ち | 近い値同士の引き算で有効桁が減る現象。 | 小さな値が加算で反映されにくい情報落ちとは別。 |
表が収まらない場合は横にスクロールできます。
WORKED EXAMPLE
一緒に解く:手順と理由を確かめよう。
sumを0とし、iを1〜6に変え、奇数ならsumに2を足します。最後のsumは?
- 候補は1・2・3・4・5・6です。
- 2で割った余りが1なのは1・3・5です。
- その3回だけsumを2ずつ増やします。
- 0→2→4→6なので、結果は6です。
| i | 奇数か | 加算後のsum |
|---|---|---|
| 1 | 真 | 2 |
| 2 | 偽 | 2 |
| 3 | 真 | 4 |
| 4 | 偽 | 4 |
| 5 | 真 | 6 |
| 6 | 偽 | 6 |
表が収まらない場合は横にスクロールできます。
6です。反復6回と加算3回を混同しないようにします。
ここで間違えやすい。
TRY IT YOURSELF
次は、自分の言葉で。
1〜4で偶数のときだけ3を足すと、初期値0からいくつ?
考え方と答えを確かめる
2と4の2回だけ加算するので6です。反復4回と加算2回を分けます。
理由まで言えたら、下の代表3問へ進みましょう。
CHECK YOUR UNDERSTANDING
代表3問で、確かめよう。
アプリ収録の問題から3問を選定。章内のすべての項目を出題するものではありません。解答・解説はこのページで確認できます。
解答・解説だけ読む
問1:A
自然現象を測定するアナログセンサからの信号は連続的に変化するアナログ値であるため、コンピュータが処理できる離散的なデジタル値に変換する必要があります。この変換を行うのがAD(Analog-to-Digital)コンバータです。変換されたデジタルデータは、コンピュータの入力端子である入力ポートを経由して取り込まれます。DAコンバータはデジタルをアナログに変換する際に用いられるため、入力側には使用しません。また、信号の流れは「センサからコンピュータへ」であるため、出力ポートを経由するという記述も誤りです。
問2:B
反復構造(for)と選択構造(if)を組み合わせることで、「ある条件を満たす場合だけ特定の処理を行う」アルゴリズムが表現されています。range(1, 6, 1) は、変数 i が 1 以上 6 未満(1, 2, 3, 4, 5)の間、1ずつ増やしながら繰り返すことを意味します。このうち i % 2 == 0(偶数)の条件を満たすのは i=2 と i=4 の2回だけです。したがって、x = x + 10 は2回実行され、最終的な x の値は20となります。
問3:C
「桁落ち」とは、値が非常に近い数値同士を引き算した結果、先頭の有効な数字が打ち消し合い、相対的に誤差の影響が大きくなって有効桁数が減少する現象を指します。 0.28 - 0.27 の例で、本来の結果から外れた値が表示される計算誤差の具体例が示されています。
理解できたら、別の問題でも。
この章の考え方を、条件の違う問題でも確かめましょう。情報1アプリでは分野別の演習と間違えた問題の復習ができます。
無料でアプリを入手 iPhone・iPadはApp Store、AndroidはGoogle Playへ。PCではストアを選べます。運営者が開発するアプリです。各OSの機能と利用条件はストア掲載をご確認ください。説明できたら、この章は完了。
- 「入力の形を確かめる」の意味と理由を、具体例で説明できる
- 「範囲と分岐を別々に追う」の意味と理由を、具体例で説明できる
- 「予想→実行→比較で直す」の意味と理由を、具体例で説明できる
迷った項目は本文・図解・例題へ戻り、答えを見ずに説明し直してみましょう。
要点へ戻る ↑出典・教材について
本サイトの26章は、アプリの分類を用いた補助教材です。検定教科書や公式の章立てではありません。問題と図解は運営者のアプリ教材から選定し、問題ID・選択肢・正答を保持しています。共通テスト過去問の転載ではありません。