Rockyで学ぶ大人のロボットプログラミング講座は、今回で8回目で、一旦最終回です。これまで、以下のようなテーマで続けてきました。第一回:プログラミングとは第二回:イベントとは第三回:順次処理とは第四回:繰り返し処理とは第五回:条件分岐処理とは第六回:演算とは第七回:定義とは今回のテーマは、「変数」です。ここまで、「かじれば」、とりあえず、ロボットプログラミングってどういう感じで進めていくかのイメージはつかめると思います(笑)さて、変数については、初めてプログラミングに挑戦する人にとっては、なかなか、すぐにイメージが掴みにくいテーマかも知れません。RockyのLEDパネルの数字を段々変えていくような場合に、変数を使います。「Aボタンを押すと、255から1ずつ減っていき、0で止まる」というプログラムを変数を利用して作っています。・プログラミングにおける、変数の基礎を理解する・mBlock5のブロックプログラミングにおいて、変数ブロックを作成し、それを使ったプログラムの作り方を理解する■Lesson8で準備するもの※Lesson1と同じです。mac)※こちらの講座ではWindows10で話を進めます。※PCにダウンロードして使います。無料でダウンロードできます。キーコンセプト:変数とは変数とはデータ(文字・数・センサーの値etc)を記憶しておく入れ物のことです。一つの「変数=入れ物」には、一度に一つしかデータを入れておくことが出来ません。新しくデータを入れると、それまで「変数=入れ物」に入っていたデータは、消えてしまいます。複雑なプログラムになっていくと、いくつもの種類のデータを使いますので、そのデータごとに、「変数=入れ物」をいくつも作ります。その為、その変数には、必ずプログラムを書く人が名前を付ける必要があります。これを「変数名=入れ物の名前」といいます。変数名は、どのような名前でも良いですが、中にどんなデータが入っているか、分かるような名前にする必要があります。CodeyRocky「照度センサーの値」を入れる変数=入れ物には、「照度センサー」のような名前を付けます。言葉で言っても、何言ってるんだか分かりませんね(笑)↑の動画のプログラムは、こんな感じです。↑の薄いオレンジ色のブロックが、変数に関するブロックです。丸いブロックが入れ物で、その中に数字が入っているというイメージを持つことですかね。変数ブロックは、自分で作る必要があります。覚えてしまえば簡単です。↓が変数ブロックの作り方動画です。https://j-tinkering.com/wp-content/uploads/2019/02/20190225_101423.mp4ちなみに、動画の中で、「全てのスプライト用」と「このスプライトのみ」とあります。「全てのスプライト用」はグローバル変数と呼び、これを選択すると、その変数は、mBlockのステージを含むすべてのスプライトから利用できます。「このスプライトのみ」はローカル変数と呼び、これを選択すると、その変数は、他のスプライトから変更され内容になります。Scrachでは、スプライトは、画面上のネコ(mBlockでいうパンダ)をさします。プログラムで動かす対象ですね。mBlockを使ったロボットプログラミングにおいては、スプライトと同じ位置づけに「デバイス」とあります。Rockyなどのロボットを指します。デバイスをCodeyRocky以外にも足した場合は、そのデバイスの中全てで対象(グローバル変数)であるか、そのデバイスのみを対象(ローカル変数)にするかという設定ができる事になります。Rockyに加え、mBotを追加し、「数字」のグローバル変数を作った例です。Rockyの変数パレットだけじゃなく、mBotの変数パレットにも「数字」が追加されているのが分かります。「変数」という言葉だけを見ると、何かの数というイメージを持ってしまいますが、プログラミングにおいては、数ではなく「入れ物」と考えましょう。具体的には、↓のブロックが入れ物で、その中には、数字というデータを入れるイメージです。最新の「mBlock5」に対応した「mBot」の基本活用術も連載中です。合わせてご覧ください。17MakeX2019のテーマ・開催概要が発表されました。J-tinkering。