変数とは?高校「情報I」の基礎をわかりやすく解説

アルゴリズム

はじめに

プログラミングを学び始めると、最初に出会う重要な概念が変数です。高校の情報Iでも、プログラミングの単元で必ず扱われ、大学入学共通テストの「情報I」でも変数の値を追いかける問題が頻出です。

この記事では、変数とは何かを身近な例で説明し、代入、データ型、配列、そして共通テスト対策で欠かせない「トレース」までをまとめて解説します。

この記事でわかること

  • 変数の意味と、なぜ必要なのか
  • 変数の宣言・代入・参照の基本
  • データ型(整数・実数・文字列・真偽値)の違い
  • 配列(リスト)の考え方
  • 変数の値を追いかける「トレース」のやり方

変数とは「データに名前をつけて入れておく入れ物」

変数とは、プログラムの中で数値や文字などのデータを一時的に記憶しておくための、名前のついた入れ物のことです。

イメージとしては、ラベルの貼られた箱です。

  • 箱の名前 → 変数名
  • 箱の中身 → 値

たとえば「点数」という名前の箱に「80」を入れておけば、あとから「点数」と呼ぶだけで、いつでも80を取り出せます。

なぜ変数が必要なのか

変数がなければ、計算のたびに具体的な数値を直接書く必要があります。変数を使うと次のメリットがあります。

  • 値を覚えておける:計算結果を後の処理で再利用できる
  • 値を入れ替えられる:同じ手順で、違うデータを処理できる
  • プログラムが読みやすくなる:「税込価格」のように名前で意味を伝えられる

変数の基本操作:宣言・代入・参照

代入:変数に値を入れる

変数に値を入れることを代入といいます。

点数 = 80

ここで大切なのは、この「=」は数学の「等しい」ではないという点です。プログラムの「=」は「右辺の値を左辺の変数に入れる」という意味の代入です。

値を書き換える

変数の値は、あとから何度でも書き換えられます。これが「変数」と呼ばれる理由です。

点数 = 80
点数 = 90
表示する(点数)   # 90 と表示される

新しい値を代入すると、古い値は上書きされて消えます。

自分自身を使った代入

次のような式は、数学では成り立ちませんが、プログラムでは頻繁に使います。

合計 = 合計 + 10

意味は「今の合計に10を足した結果を、合計に入れ直す」です。右辺が先に計算され、その結果が左辺の変数に入ります。

参照:変数の値を使う

変数名を式の中に書くと、その時点で入っている値が使われます。

値段 = 300
個数 = 4
合計 = 値段 * 個数
表示する(合計)   # 1200 と表示される

データ型:入れるデータの種類

変数に入れるデータには種類があり、これをデータ型といいます。

データ型内容例
整数型小数点のない数10, -3, 0
実数型(浮動小数点型)小数点のある数3.14, -0.5
文字列型文字の並び“こんにちは”, “abc”
真偽値型(論理型)正しい/正しくないTrue, False

数字と文字列の違いに注意

10 と "10" は、見た目が似ていても別物です。

python

a = 10 + 5        # 数値の足し算 → 15
b = "10" + "5"    # 文字列の連結 → "105"

型が違うと、同じ「+」でも動作が変わります。これはプログラミングで初心者がつまずきやすいポイントです。

型の扱いは言語によって異なる

Pythonのように、変数に入れる値から型が自動で決まる言語もあれば、変数を使う前に型を宣言する言語もあります。情報Iでは、まず**「データには種類がある」という考え方**を理解することが大切です。

変数の名前のつけ方

変数名は自由につけられますが、次のルールと工夫があります。

  • 意味が伝わる名前にする(例:x より 点数、price など)
  • 使えない文字や先頭の文字に制限がある(言語によって異なる。多くの言語で先頭に数字は使えない)
  • 予約語(if、for など)は使えない

分かりやすい変数名は、あとから自分や他の人がプログラムを読むときの助けになります。

配列(リスト):複数のデータをまとめて扱う

たとえば5人のテストの点数を扱うとき、変数を5個用意するのは大変です。そこで使うのが配列(Pythonではリスト)です。

配列は、同じ名前の箱が横に並んだもので、それぞれの箱を**添字(インデックス)**という番号で区別します。

python

点数 = [70, 85, 60, 92, 78]
print(点数[0])   # 70(最初の要素)
print(点数[3])   # 92

添字は0から始まることが多い点に注意してください。共通テストで使われるプログラム表記でも、配列の添字は0から始まります。

配列は、前回解説した探索や整列のアルゴリズムでも中心的な役割を果たします。繰り返し構造と組み合わせて使うと、大量のデータを効率よく処理できます。

変数の値を追いかける「トレース」

共通テスト「情報I」の対策で最も重要なのが、トレース(変数の値の変化を順に追うこと)です。

例題

合計 = 0
i を 1 から 4 まで 1 ずつ増やしながら繰り返す:
    合計 = 合計 + i
表示する(合計)

トレース表

繰り返しi合計(処理後)
開始前–0
1回目11
2回目23
3回目36
4回目410

最終的に10が表示されます。

トレースのコツ

  1. 変数ごとに列を作り、値の変化を1行ずつ書く
  2. 代入の右辺を先に計算する
  3. 繰り返しの回数と終了条件を最初に確認する
  4. 途中で頭の中だけで計算せず、必ず紙に書く

よくある間違い

  • 初期化を忘れる:合計 に何も入れないまま 合計 = 合計 + i をすると、正しく動かない(または エラーになる)
  • 「=」を数学の等号と混同する:代入と「等しいか」の比較は別物(多くの言語で比較は ==)
  • 上書きされたことを忘れる:代入すると古い値は消える
  • 添字のずれ:配列の最初は0番目

まとめ

  • 変数とは、データに名前をつけて記憶しておく入れ物のこと
  • 値を入れる操作を代入といい、「=」は数学の等号とは意味が違う
  • データには型(整数・実数・文字列・真偽値)がある
  • 複数のデータは配列でまとめて扱え、添字は0から始まることが多い
  • 共通テスト対策では、変数の値を表で追うトレースが重要

変数はアルゴリズムやプログラムを支える土台です。まずは簡単なプログラムで、変数の値がどう変わるかを紙に書いて確かめてみましょう。