プログラムを学ぶ上で変数は避けて通ることはできないものです。
しかし、
- 変数って何?
- 変数ってどうつかうの?
- 変数を使うメリットは?
といったことを
お子さんに説明するのは難しいのではないでしょうか?
子ども向けのプログラミングの本を読んでも
変数の説明が「箱」で終わっているものも少なくありません。
今回はスクラッチ(Scratch)を使って変数について解説します。
(MakeCodeでも考え方は同じです。)
なるべく難しい言葉は使わないようにしました。
お子さんに説明する時の参考になればと思います。
変数とは
変数とは、プログラムで使う数字や文字の
ようなデータを一時的に保存するために
メモリ上に名前をつけて確保した場所のことです。
よく「数字や文字を入れておく箱」と言われたりします。
数値や文字列などのデータを変数に入れて
保管することができ、後で変数に保管した
データを取り出して使うことができます。
例えばゲームの場合、
スコアや残り時間などを保存するために使います。
PR自宅にいながら本格的プログラミング学習|Tech Kids Online Coaching

変数の使い方 スクラッチを使って解説
では、スクラッチで変数を使ってみましょう。
変数の作り方(宣言)
変数を作ることを変数の宣言と言います。
1.変数のカテゴリにある「変数を作る」をクリック
2.変数名を入力し、「OK」をクリック
- すべてのスプライト用(グローバル変数)
ステージとすべてのスプライトから使える変数 - このスプライトのみ(ローカル変数)
この変数を作ったスプライトのみ使える変数
3.変数ができました
変数の宣言とデータ型
プログラミング言語の中には
変数の宣言で、変数の名前の他に
データ型を指定する必要があるものがあります。
データ型とは数や文字などデータの種類のことです。
型と言ったりもします。
変数の宣言で「何を入れるか」まで決めているのですね。
データ型には下のような種類があります。
- 数値型 … 数(1、2、3…)
- 文字列型 … 文字列(”ABC”、”あいうえお”など)
- 真偽型 … 真(true)か偽(false)
スクラッチの場合、基本ブロックの形が
データ型を表していますが、ブロックの形を
共有する数値・文字列などの型は状態によって自動的に決まります。
あまり意識することがないかもしれませんが
覚えておくとよいと思います。
変数にデータを入れる(代入)
変数にデータを入れるには
「変数▼を0にする」というブロックを使います。
▼をクリックすると変数を選択することができます。
0の部分は数値や文字を入れたり、
変数や計算結果を入れることができます。
変数に入れたデータを使う(参照)
変数に保存したデータは
内容を表示したり、計算などに使うことができます。

変数を使ったプログラム例
旗が押されたとき
リンゴとバナナの個数を入力して
合計金額を表示するプログラムです。
ネコのスプライトのプログラム
変数「合計」~変数はコロコロ変わる~
変数「合計」は、計算に使っています。
- 最初に0を入れて初期化。
使う前に変数の中をキレイにしておきます。 - リンゴの金額を計算して「合計」に保存。
- 「合計」(この時はリンゴの金額)に
バナナの金額を計算して足した値を保存。
変数「リンゴの値段」~変数を使うメリット~
イヌのスプライトでもプログラムを作ってみました。
ネコとくらべてみましょう。
一番上にある「旗が押されたとき」を
「このスプライトが押されたとき」に変えてください。
ネコのスプライトは
最初に「リンゴの値段」「バナナの値段」へ
それぞれ値段を入れて使いまわしています。
一方、
イヌのスプライトでは変数を使わず、
値段の値をそのまま表示したり計算の式で使っています。
どちらも結果は同じなのですが、
リンゴの値段が変わったら
ネコは1ヵ所だけ直せばいいですが
イヌは2ヵ所直す必要があります。
もし、リンゴの値段の場所が100ヵ所あったら…
また、イヌの方は計算に使われている
150や120の数字の意味がパッと見で分かりにくいですね。
「リンゴは150円です。と2秒言う」が
なかったら、ますます分からなくなってしまうでしょう。
ネコの方は変数の名前で意味がすぐ分かります。
プログラムを分かりやすくしたり
変更が簡単にできるようになるメリットがあります。
まとめ
変数とは、データを入れておく箱のようなもの。
プログラムで使うデータを
一時的に保存するため、メモリ上に
名前をつけて確保した場所のことです。
データを変数に入れて保管し、
あとで変数に保管したデータを取り出して使います。