micro:bitによるプログラミング（2）担当：高橋参吉（NPO法人 学習開発研究所）

実習内容




プログラミングの基礎（順次、繰返し）
スイッチボタンの利用～じゃんけんゲーム～
プログラミングの基礎（分岐）光センサ

引用・参考文献
高橋参吉、喜家村奨、稲川孝司：micro:bitで学ぶプログラミング ブロック型から
JavaScriptそしてPythonへ、コロナ社、（2019.9）.

1

プログラムの基礎（順次、繰返し）【例題1－2】 次のプログラムを作成して、図のように表示されることを確かめよう。
（ファイル名：rei1-2）＜手順＞
1) 「基本」から「最初だけ」ブロックを選択する
2) 「LED」から「点灯」ブロックを選択し、xを「2」、yを「0」にする。左上のLEDの座標は（0、0）、右下のLEDの座標は（4、4）である。
3) 「点灯」ブロックにマウスをあて、マウスの右ボタンを押して複製を選択する。
4) 点灯ブロックを4回コピーし、ｘをすべて「2」、ｙを「1～4」にする。
5) 5つの点灯ブロックを「最初だけ」ブロックに接続し、動作を確認する。
このようなプログラムの構造を順次構造という。

横幅を狭くすると、シミュレータ画面が右下に表示される。
2

プログラムの基礎（順次、繰返し）【例題1－3】 例題1－2のプログラムを、「ループ」から、繰り返しのブロックを使って、プログラムを変更してみよう。
（ファイル名：rei1-3）＜手順＞
1) 点灯ブロックを「最初だけ」ブロックから削除する。
2) 「ループ」から「変数（index）を0～4に変えてくりかえす」ブロックを選択する。
3) 「変数（index）」の箇所を選択した後、「変数の名前を変更」を選択して、ダイアログが表示されるので「ｙ」に変更する。
4) 「最初だけ」ブロックに接続する。
5) 「LED」から「点灯」ブロックを選択し、ｘの「0」を「2」に変更する。
6) 「変数」から「ｙ」を選択し、「点灯」ブロックのyの「0」の上に置く。
7) 変更した「点灯」ブロックを「変数yを0～4に変えてくりかえす」ブロックに接続する。
このようなプログラムの構造を繰返し構造という。

3

プログラムの基礎（順次、繰返し）【例題1－4】 例題1－3で、点灯のx座標を変数「x」、y座標を変数「4-x」に変更して、図の形を確認してみよう。
（ファイル名：rei1-4）＜手順＞
1) 「変数」から「変数を追加する・・・」を選択し、「ｘ」を作成する。
2)「y」の箇所を「ｘ」に置き換える。

3) 「点灯」の「2」の箇所を「x」に置き換える。
4) 「計算」から「引き算」のブロックを選択する。
5) 計算式（4-x）を作成して、「点灯」のｙ座標に置く。
4

＜デバッグモード＞
スローモーションで、点灯の様子を確かめてみよう。

スローモーション

デバッグモード5プログラムの基礎（順次、繰返し）（演習課題）【例題1－5】 例題1－3のプログラムの繰り返し「ループ」の箇所でブロックを変更したプログラムも同じように動くことを確認しよう。
（ファイル名：rei1-5）＜手順＞
1) 「ループ」の「真ならくりかえす」を選択する。
2) 「論理」「くらべる」から「0 < 0」を選択し、 「ｘ≦ 4」を作成する。
3)

真の箇所を、「ｘ ≦ 4」に置き換える。

4) 繰り返し「ループ」の箇所を作成した「真ならくりかえす」に置き換える。
5) 「変数」から「変数ｘを１だけ増やす」を追加する。
繰り返し回数がわからない時は、このループを使うとよい。

6

アイコンとスイッチボタンの利用【例題1－6】 ボタンAを押すと「グー」を表示、ボタンBを押すと「パー」を表示するプログラ
ムを作成しよう。なお、「最初だけ」ブロックで、「グー」を表示する。また、「グー」「パー」は、アイコン（小さいダイアモンド、しかく）を利用する。
（ファイル名：rei1-6）＜手順＞

1) 「基本」から「最初」ブロックを選択する。
2) 「基本」から「アイコンを表示」を選択し、「小さいダイアモンド」にする。
＜手順（ボタンA、ボタンB）
1) 「入力」ブロックから、ボタンを押された時を選択する。
2) ボタンAでは、「アイコンを表示」で「小さいダイアモンド」（グー）を表示する
3) ボタンBでは、「アイコンを表示」で「しかく」（パー）を表示する。
7

アイコンとスイッチボタンの利用（演習課題）【例題1－７】 ボタン「A+B」が押されたとき、はさみ（チョキ）を表示するプログラムを追加してみよう。また、2台の micro:bit にプログラムをダウンロードして、2人でじゃんけんを行ってみよう。
（ファイル名：rei1-7）＜手順（ボタンA＋B）＞
ボタンA＋Bでは、「アイコンを表示」で「はさみ」を表示する。

8

プログラムの基礎（分岐）【例題1－8】 乱数（0、1）を発生させ変数「c」に代入し、cが0の時は（グー）、cが1の時は（パー）を「ずっと」くりかえし表示するようなプログラムを作成しよう。（ファイル名：rei1-8）＜手順＞
1) 「基本」から「ずっと」ブロックを選択する。
2) 「論理」から「もし～なら～でなければ」ブロックを選択する。
3) 「基本」から「アイコン表示」ブロックを選択し、「小さいダイアモンド」は「～なら」、「しかく」は「～でなければ」の後に接続しておく。
4) 「変数」から「変数を追加する」を選択し、変数の名前をcにする。また、「変数cを0にする」ブロックを選択する。
5) 「論理」「くらべる」から「 0 = 0 」ブロックを選択し、「 c =0 」に変更し、「もし・・・」ブロックに重ねる。
6) 「計算」から「ランダムな数字を選択：0から10まで」を選択し、範囲を「0～1」にし、「変数ｃ・・・」ブロックに重ねる。

9

プログラムの基礎（分岐）（演習課題）【例題1－9】 乱数（0、1、2）を発生させて、変数cに代入して、cが1の時は、「アイコン表示」の「はさみ」（チョキ）を表示するようなプログラムに変更しよう。（ファイル名：rei1-9）
＜手順＞

修正する

1) 「もし～なら～でなければ」のブロッ
クの「＋」マークをクリックすると、「でなければもし～なら」が追加される（図(a)）。次に、グーを移動、チョキを追加する（図(b)）。

追加する

2) 「0から1までの乱数」を「0から2までの乱数」にしておく。
3) 「でなければもし」の箇所に、「 ｃ =1 」にブロックを追加しておく。
例題1-8、例題1-9のようなプログラムの構造を分岐構造という。

チョキを追加する
ブロックが追加される(a)変更前(b)変更後10

じゃんけんゲーム（応用課題）
2台の micro:bit にプログラムをダウンロードして、2人でじゃんけんを行ってみよう。また、勝敗を判定する表から、判定式を考えてみよう。
種類

数値

グー0

チョキ

1

パー2AB

判定（A－B）の値

00

引分け

00011
1222

120
12012AB
B-1-2
10-12
10引分け
AAB
引分け

高橋、喜家村、稲川：micro：bitで学
ぶプログラミング、pp.14-15、pp.4143、コロナ社
11

光センサ
【例題1－１0】 光センサ（LED）を使って明るさの値をLED に表示するプログラムを作り、LED の部分を覆って値が変化することを確かめてみよう。

（rei1-10）＜手順＞
1) 「基本」から「ずっと」ブロックを選択する
2) 「基本」から「数を表示」ブロックを選択する。
3) 「入力」から「明るさ」ブロックを選択する。
4) 「基本」から「表示を消す」ブロックを選択する。
5) 「基本」から「一時停止（ミリ秒）」ブロックを選択し、「1000」(1 秒)を選択する。4 ）で一度表示を消して、5 ）で1 秒待つことで、表示を見やすくしている。
光センサは、暗いときは0 で、最大の明るさのときは255の値になる。
12

光センサによる制御【例題1ー11】 LEDセンサを利用して、 「💛💛」マークを暗い時に点灯させてみよう。明るさを変化させて考えてみよう。
（rei1-11）
手順＞
1) 「基本」から「ずっと」ブロックを選択する
2) 「論理」から（条件判断）「もし～なら～でなければ」ブロックを選択する。
3) 「論理」から（くらべる）「 0 < 0 」ブロックを選択し、右の数値「0」を「150」にする。
4) 「入力」から「明るさ」ブロックを選択し、「明るさ」を「 0< 150 」の左の数値「0」に重ねる。
5) 「明るさ < 150」を「もし～なら～でなければ」ブロックの「真」の箇所に重ねる。
6) 作成した「もし～なら～でなければ」ブロックに、 「💛💛」マークの点灯のプログラムを入れる。
シミュレータ画面の光センサの表示箇所をドラッグすると、数値が変わる。

ここをドラッグすると，数値が変わる。

13光センサによるLEDの点灯（応用課題）
理科第6学年：
身の回りには、電気の性質や働きを利用した道具があること等をプログラミングを通して学習する場面

 プログラムを変更して、LED回路に接続する。
 暗くなれば、LEDが点灯する。
（ファイル名：kadai1）
 スイッチを押すと、LEDが点灯する。
（ファイル名：kadai2）
高橋、喜家村、稲川：micro：bitで学ぶ
プログラミング、pp.35-38、コロナ社

プログラムの変更

スイッチによるLEDの点灯
14

プログラムのダウンロードについて＜プログラムに対する注意事項＞
利用している例題プログラムなどは、NPO法人学習開発研究所の下記のWebサイトからダウンロードしてください。
本書の中で記載しているファイル名、例えば、rei○○は、保存ファイル名では、microbit-rei○○.hex、 になっています。
http://www.u-manabi.org/microbit/

15