Scratchの変数って何?どういうふうに使うのかな?あと、どういうときに使うのか教えてほしいな。
こんな疑問にお答えします。
- Scratchの「変数」とはなにか解説
- Scratchの変数の使い方を解説
- 変数が使われている例を紹介
変数を理解することができたらゲームの主人公の名前をプレイヤーが入力できるようになったり、ゲームの得点を管理できるようになりますよ。
そんな私は大手メーカーでソフトウェアエンジニアを6年以上経験していまして、バリバリプログラムを書いていました。
この私が解説します。
Scratchの「変数」とはなにか解説
変数とは?
変数とは「データを一時的に保存できるようにメインメモリ上に確保してある領域」です。
と、言われても難しいですよね。もう少し簡単に説明すると
だと思ってもらえばいいです。
変数を図にするとこんな感じです。
この仕組みがScratchでも使えます。
変数を使うプログラムの考え方
例えば、キーボードから入力された2つの数字の和を表示するプログラムを作るとしましょう。
このプログラムを作るときの考え方は次のとおりです。
- 変数「数1」にキーボードから入力された数値①を入れる
- 変数「数2」にキーボードから入力された数値②を入れる
- 変数「数1」と変数「数2」の値を足した結果を変数「和」に入れる
- 変数「和」の値を表示する
ポイントはキーボードから入力された数値はどこかに保存しておかないと、次にキーボードから入力されると消えてしまうということです。
その保存しておくための場所が変数です。
これらを図で表すと次のとおりです。
1.変数「数1」にキーボードから入力された数値①(25)を入れる
2.変数「数2」にキーボードから入力された数値②を入れる
3.変数「数1」と変数「数2」の値を足した結果を変数「和」に入れる
4.変数「和」の値を表示する
こんな感じです。
というわけで、変数は「文字や数字を入れたり、出したりできる箱」です。
Scratchの変数の使い方を解説
では、具体例を交えながらScratchでの変数の使い方を解説します。
変数の作り方
まず、命令ブロックエリアの[変数]→[変数を作る]の順にクリックします。
すると新しい変数を作る画面が開くので変数名を入力します。
今回は「変数1」にします。そして[OK]をクリックします。
すると変数エリアに作成した「変数1」が表示されます。
ここまでが変数の作り方です。
変数の表示と非表示
Scratchの変数には変数の値を実行結果画面に表示する機能があります。
このように変数に✓を入れるだけです。
✓を外すと表示されなくなります。
変数の値を変更する
変数はその名の通り値を変更することができます。
Scratchで値を変更するには[変数を(0)にする]ブロックを使います。
変数と変更したい値を指定し、
命令を実行すれば、変数の値が変わります。
キーボードから入力された2つの数字の和を表示するプログラム例
基本的な変数の使い方がわかったところで、最初の例に挙げた「キーボードから入力された2つの数字の和を表示するプログラム」を具体的に解説していきます。
手順をおさらいすると次のとおりです。
- 変数「数1」にキーボードから入力された数値①を入れる
- 変数「数2」にキーボードから入力された数値②を入れる
- 変数「数1」と変数「数2」の値を足した結果を変数「和」に入れる
- 変数「和」の値を表示する
この手順通りに作ったプログラムがこちらです。
実行すると「1つ目の数は?」と表示され、その答えを入力する枠が表示されます。そこに好きな数値(数値①)を入力します。
ここで入力された数値①は「答え」部分に一時的に保存されるので、その数値①を変数「数1」に保存しなおします。
次に「2つ目の数は?」と表示されるので、好きな数値(数値②)を入力します。
すると変数「数1」と変数「数2」の和が計算されて実行結果画面に表示されます。
このようにして変数を使います。
変数を使う例を紹介
変数の使い方がわかったところで、世の中のプログラムで変数が使われている例を紹介します。
どんなところで使われているか知っているとプログラムを作るときに役に立ちますよ。
キャラクターのHPを管理
RPGやアクションゲーム、格闘ゲームなどのHPに変数が使用されています。
キャラクターのHPを変数にしておけば、敵から攻撃を受けたときにHPを少しずつ減らすことができます。
- 弱攻撃なら10ポイント
- 強攻撃なら30ポイント
のように設定しておけば、攻撃が当たるたびに
- 弱攻撃を受けたら「HPの変数-10」
- 強攻撃を受けたら「HPの変数-30」
というように計算できます。
このようにゲームキャラクターのHPは変数で管理されています。
フリマアプリの設定を管理
フリマアプリに商品を出品すると価格や送料を設定できますよね。
これはあらかじめ価格を入力するための変数が用意されていてユーザーが出品価格を入力するとその変数に情報が保存されるようになっています。
プログラムの流れは
- ユーザーに出品価格を入力してもらう
- 出品価格を変数に保存する
- 変数の値を商品画面に表示する
上記のとおりです。
このように変数を活用すれば、フリマアプリの商品価格を設定できます。
変数の活用箇所は他にもたくさん
上記2つはわかりやすい例を出しましたが、プログラムの中ではありとあらゆる場面で変数が使われています。
なので、ぜひScratchで変数を活用してみてください。
また、その他のScratchに関する解説は下記の記事をご覧ください。使い方だけでなく本質がわかるように解説しています。
では、Scratchを楽しんでください(^_^)/~