こんにちは、ナナです。
プログラミングの世界には「変数」と呼ばれるものがよく登場します。
プログラムとは数字を管理しながら、様々な動きを行うものです。「変数」を使うことで『数を覚えておくことができる』ようになります。
この記事では、次のことを学習できます。
では、makecodeを使った、「変数」の使い方を学んでいきましょう。
「変数」は数を記憶する箱のこと
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
師範!makecodeのブロック一覧の中に、「変な数」というおかしなブロックが含まれています。これはなんでしょうか?
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
それは「変な数」じゃなくて、「変わる数」という意味の「変数」のことだね。
プログラミングをするうえで「変数」は欠かせないものなんだよ。変数を使うと、数を記憶しておくことができるんだよ。
プログラムを本格的に作っていくと、たくさん数字が登場します。そんな数字を記憶しておくのが「変数」です。
![変数は数字を覚える箱](https://monozukuri-c.com/wp-content/uploads/2019/08/b1e7d65042b0ae2edf50e7f894efeb41-1.png)
「変数」とは数字を忘れないように覚えておくための、メモを入れる箱なんです。
ゲームの中には出てくる数字は変数で覚えている
ゲームのキャラクターには、「レベル」「HP」などの数字がパラメータとして設定されていますね。
プログラムでは、このような数字は「変数」の中に覚えています。
![勇者のパラメータ](https://monozukuri-c.com/wp-content/uploads/2019/08/f408d4554df1745aa9b5397da9549aa8-1.png)
例えば、勇者が敵からの攻撃を受けたときに、ダメージを負いますね。その場合、「HP」変数の中に覚えている「65」からダメージ分の数が減るのです。
![敵からダメージを受ける](https://monozukuri-c.com/wp-content/uploads/2019/08/41a39b6971f04a4d295cc53f99fb7ffa-1.png)
このように、変化する数字を常に記憶しながら管理することで、ゲームを進めているのです。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
「変数」を1つ作れば、1つの数字を記憶することができます。2つ記憶したければ、2つの変数を作ればいいということですね!
変数ブロックを使ってプログラミングをしてみよう
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
「忍者」のわたくしは「すばやさ」のパラメータが180なのよ。シュッ、シュッ、この速さにあなた達はついてこられるかしらっ!
キーボードのタイピングの速さもこの通りでですわっ「アタタタタタタッ!」
(*´Д`) ゼェゼェ…
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
タイピングの速さはすごいけど、でたらめな言葉で全然正しく打ち込んでないよ。慌てる必要はないから、じっくりプログラミングを学んでいこうね!
じゃあ、まずは変数ブロックを使ってみようね。
では、変数ブロックを使ってプログラミングをしてみましょう。
「変数」ブロックの作り方
「変数」ブロック一覧を選択すると「変数を追加する…」が表示されるのでクリックします。
![変数を追加を選択](https://monozukuri-c.com/wp-content/uploads/2019/08/6b36e8d997171310962e7f67fac6c302-1.png)
そうすると、「変数」に名前を付ける画面が表示されます。
![変数に名前を付ける](https://monozukuri-c.com/wp-content/uploads/2019/08/8e64e47cffd98a51ad50f2ee04cf8779-1.png)
変数にどのような数を記憶させたいかを考え、それを表す名前を付けてあげます。
今回は「A」スイッチが押された回数を記憶させるので、「Aスイッチを押した回数」と入力しましょう。
[OK]を押すことで変数が作成されます。作成された変数には、次のように3つのブロックが使えるようになります。
![変数ブロックで使えるブロック一覧](https://monozukuri-c.com/wp-content/uploads/2019/08/43d5f9a8f742078f8ae30e730a808b47-1.png)
「変数」に記憶された数を表示する
それでは変数ブロックと他のブロックを組み合わせてプログラミングをしてみましょう。
まずは、変数に記憶された数をLEDに表示してみましょう。
![変数の値を表示してみる](https://monozukuri-c.com/wp-content/uploads/2019/08/d348a25dd6a9142400ecc33874972ced-1.png)
「数を表示」ブロックは丸形のブロックを入れることができ、「変数」ブロックは丸型ですね。ブロックを合体させて「ずっと」ブロックに結合します。
そうすると、micro:bitには「0」の数が表示されましたね。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
作成した変数の中には、最初は「0」の数字が入っているんですよ!
変数の記憶された数を変えてみる
変数に記憶された数を変化させることもできます。
![変数値の設定ブロックを使ってみる](https://monozukuri-c.com/wp-content/uploads/2019/08/1b9b6b7683a6c08b474d3c35a0962819-1.png)
「変数値の設定」ブロックを使うと、好きな数字を変数に入れることができます。今回は「5」という数字を入れてみました。
micro:bitに「5」の数字が表示されましたね。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
みんなも好きな数字を入れて確認してみましょう!
「変数」を使ってスイッチが押された回数を数えてみよう
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
なるほど。数字を記憶するのが「変数」の役割なのね。変数を作ればあらゆる忍術の出し方を忘れることもなく覚えていられるのね、便利だわ。
師範!まだまだ「変数」の知識が足りていないわ。「変数」を使ったプログラミングをもう少し知りたいのよ!
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
プログラミングはたくさん作って覚えていくのがいいね。じゃあ、変数を使って、プログラミングをしていこうね。
それでは、「A」スイッチが押された回数をLEDに表示するプログラムを作ってみましょう!
作成するプログラム内容
みんなに作成してもらいたいプログラムは、次の内容です。
プログラムでスイッチを押した数を数えるためには「変数値を増やす」ブロックを使ってみよう!
![変数値を増やすブロック](https://monozukuri-c.com/wp-content/uploads/2019/08/3cb43ad55c265836943ea2efc14a4e18-1.png)
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
プログラムができたら答えを開いていいよ!
「ボタンが押されたとき」ブロックを使います。それぞれ次のブロックを結合します。
「A」スイッチには、「変数値を増やす」ブロックで「1」を増やす
「B」スイッチには、「変数値を設定する」ブロックで「0」を設定する
![](https://monozukuri-c.com/wp-content/uploads/2019/08/baa03cd4f887e585891448afb5e8d45b.png)
「A」「B」スイッチをクリックすると、目的の動作になります。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
「A」スイッチを高速でクリックしても、クリックした回数がちゃんと数えられているんですよ。試してみてください。
作った変数を削除する方法を学ぼう
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
師範!!!間違って変数を作ってしまいました…アタフタ、アタフタ。
キーボードの「DEL」キーを押したら、ブロックは消えたんですが、変数ブロック一覧の中にはまだ残っているんです…。どうすればいいんですか?
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
慌てることはないですよ。無駄に作ってしまった変数は削除することができますよ。手順を教えますね。
プログラミングエリアから「変数」ブロックを消しても、変数自体を削除したことにはなりません。
作成した変数を削除する方法
作成した変数をプロジェクトから削除するためには、「変数」ブロックの「▽」をクリックし項目を表示します。
その中の「この変数を削除する」をクリックすることで、正式に削除することができます。
![変数ブロックを削除する](https://monozukuri-c.com/wp-content/uploads/2019/08/dbae88c50875572b8c63b3e9a26dd3a5-1.png)
これで、変数ブロック一覧の中からも、作成した変数が削除されます。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
項目の中にある「変数の名前を変更…」をクリックすると、変数の名前を再度設定することもできるよ!
質問コーナー:変数について気になること
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
「変数」について質問がある人は手を挙げてね!
質問:変数に記憶できるものは何があるの?
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
はい、はーい、質問ですっ。「変数」ブロックの中に入れられるものは、「A」や「B」とかの文字も入れられるのでしょうか?
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
「変数」ブロックに入れられるものは『数字』だけなんだよ。文字は入れられないことに注意しようね!
「変数」ブロックに入れられるのは数字のみです。アルファベットなどの「文字」は入れることができません。
![変数ブロックには文字は入れられない](https://monozukuri-c.com/wp-content/uploads/2019/08/dbdc2a6b8b43076039b94aa6da574b1b-1.png)
文字を入れようとすると、色がピンク色となり異常であることを示します。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
数字であれば2ケタ以上の数も、変数には入れることができるよ!
やってみようコーナー:変数を使ったプログラミングの巻
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
それじゃあ「変数」ブロックを使ったプログラムを作ってみようね!
修行その1:「変数」ブロックを使ったプログラム
次の内容を実現するプログラムを作ってみましょう!
プログラムができたら「A」スイッチを押して、数が順番に減ることを確認してみよう!
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
練習で行った数えるプログラムとは逆のプログラムね。押される度にカウントダウンをするのね。簡単そうだわ。
え?ちょっと待ってよ。「変数」ブロックの種類には「変数値を増やす」しかないわよ!どうやって減らせばいいの?
![増やすブロックでは減らせないの?](https://monozukuri-c.com/wp-content/uploads/2019/08/a54639a69e94f4df132fb2881263f5a1-1.png)
ひょっとして…「カタ…カタ…」、そういうことね。わかったわよっ!
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/274ac86909c1a78190c701cdec501e0d-1.png)
さぁ、みんなはこの謎が解けるかな?
このブロックの「増やす」っていう意味は「指定した数を加える」ってことなんだよ。
![](https://monozukuri-c.com/wp-content/uploads/2019/07/88c0a382ed2194932102ef5a18874664.png)
みんなも解けたかしら?
発想を逆転させるのよ!そう「-1」を加えるってことね。プログラムは発想次第でなんでもできるってことね。
ポイントは「変数値を増やす」ブロックで「-1」を設定することです。
こうすることで「-1」を加えるという意味になり、変数の数を減らすことができます。
![カウントダウンのプログラム](https://monozukuri-c.com/wp-content/uploads/2019/08/9b83de4dfadae89210611b3a9df63dcb-1.png)
「A」スイッチを押すと、数がカウントダウンするのがわかりますね。
![ナナ](https://monozukuri-c.com/wp-content/uploads/2019/06/bfc1cf65d1130f875793b49176917183-1.png)
micro:bitのプログラムを最初から学びたい子は、ここから始めよう!