小学校から高等学校へのプログラミング教育の接続性～micro:bitでの教材作成と指導法～

高橋 参吉*1，喜家村 奨*2，稲川 孝司*2，三輪 吉和*1，西野 和典*3
*1NPO法人学習開発研究所，*2帝塚山学院大学，*3太成学院大学

1

発表の概要研究目的
 小学校から中学校への接続、そして、高校への接続を考慮したプログラミング的思考、情報の科学的理解を深める教材開発および指導法
 ビジュアル言語（ Scratch → micro:bit）を利用した教材開発

micro:bitを利用した学習教材
 プログラミング指導、教材で用いるブロック(表１） micro:bitを利用したプログラミング学習教材(表2） 小学校高学年から中学校で利用できるプログラミング学習教材
 学習教材のコンセプト
 「教材を観て、自分で確認して、自らが納得する」

micro:bitによるプログラミング指導
 micro:bitの特徴(長所、短所）を利用した指導2

表１ プログラミング指導で用いるmicro:bitのブロック
ブロック
【基本】

内容（レベルI）

内容（レベルII）

最初だけ，ずっと，（ブロックの削除方法）

数を表示，文字列を表示，LED画面に表示，アイコンを表示，表示を消す，一時停止
ボタンが押された（A）ときボタンが押された（A+B）とき，ゆさぶられた（▼）とき【入力】
明るさ
温度，方角など【LED】 点灯，消灯
くりかえし（0) 回変数（index）を「0」～（4）にかえて くりかえす【ループ】
もし（真）なら くりかえし「条件判断」：もし（真）なら…でなければ…
「条件判断」：もし（真）なら…
でなければ……でなければ…
【論理】「くらべる」：（0）＝（0）,（0）＜＝（0）「真偽値」：「かつ」，「または」，「でない」

【変数】
【計算】

注意事項

変数を追加する…
（0）＋（0），（0）－（0），（0）×（0），（0）÷（0）， ランダムな数字を選択：（0）～（10）まで（0）を（1）で割ったあまり

入力制限
入力禁止

2重ループ

組み合わせ3表2 micro:bitを利用したプログラミング学習教材
学習教材
【算数】
約数，倍数

内容（レベルI）

内容（レベルII）

備考「FizzBuzz」問題：「FizzBuzz」「約数の表示」：
2つの数値を変数に入力し，約数 3の倍数は「Fizz」，5の倍数は「Buzz」，3と5 参考文献(3)の両方の倍数は「FizzBuzz」と表示する．
かどうかを判定する．
「LEDの点灯」：「スイッチボタンによるLED制御」：
参考文献(2）【理科】
電気の性質 LEDセンサを利用して，暗い時に 暗くなれば，LEDが点灯する．また，スイッチ 参考文献(1)を押すと，LED が点灯する．
pp.35-38「💛💛」マークを点灯させる．
参考文献(2）
じゃんけん 「アイコン（グー，パー，チョキ）の表 「乱数の利用」：
乱数（0，1）を発生させ，変数cに代入し，cが0 参考文献(1)示」：
ゲーム
ボ タ ン A で 「 グ ー 」 ， ボ タ ン B で の時は「グー」，cが1の時は「パー」をくりかえ pp.14-15「パー」，ボタン「A+B」で「チョキ」を し表示する．
pp.41- 43
表示する．
参考文献(1)「数値を固定」：「候補の数値を変更」：
数あて
答えと候補の数値を入力しておき， 候補の数値を入力（もしくは，乱数），当たれば pp.16-18
ゲーム
同じなら「💛💛」，異なれば「×」を表 「💛💛」，間違っていれば「×」を表示する．
示する．
「投入硬貨2種類」：
参考文献(1)
自動販売機 「投入硬貨1種類」：
商品は200円，投入硬貨は100円 商品は200円，投入硬貨は50，100円とする． P．68
4とする．

学習教材のコンセプト
プログラミングの学習教材
「教材を観て、自分で確認して、自らが納得する」
「じゃんけんゲーム」の場合
 教材を観て、実行して自分で確認する。
• じゃんけんゲーム（1）• 「グー、パー」のじゃんけんについて学ぶ。
 教材プログラムを観て、自らが納得する。
• じゃんけんゲーム（1）• ブロックを確認して、論理の構成を理解する。
 教材プログラムの変更も試みて、思考する。
• じゃんけんゲーム（２）• 勝敗の判定（じゃんけんの判定表）について考える。
5

micro:bitを利用した学習教材
じゃんけんゲーム導入（小学校高学年）
 じゃんけんゲーム（0） ボタンで、グー、チョキ、パーを表示する。
 2人で、対戦してみる。

実行して確認し、プログラムを観て納得する じゃんけんゲーム（1） 乱数（0、1）を発生させ、0の時は（グー）、1の時は（パー）を表示する。
 2台のmicro:bit で、対戦してみる。

6

micro:bitを利用した学習教材
 変更を試みて思考する じゃんけんゲーム（２） 乱数（0、1、2）を発生させて、「はさみ」（チョキ）を表示するプログラムに変更する

 より深く思考する(高校） じゃんけんゲーム（３） じゃんけんの判定表を考える
 判定表をもとに、効率的なプログラムを考える 無線LANを利用した自動判定プログラムを作成する

高橋、喜家村、稲川：micro：bitで学ぶプログラミング、
pp.14-15、pp.41-43、コロナ社(2019)7

micro:bitを利用した学習教材
高橋、喜家村、稲川：micro：bitで学ぶ
プログラミング、p.14、コロナ社

じゃんけんの判定表
種類

数値

グー0
チョキ
1
パー2A

B

判定（A－B）の値(A-B+3) ％ 3の値

00

引分け

000

1

A-1

202

B-2

110B

1

1

1

1

引分け

00

12

A

-1

220

A

2221B

1

122

引分け

008

micro:bitによるプログラミング指導の注意事項
micro:bitのプログラミング（長所を生かす）指導 さまざまなセンサがあるので、子どもは興味を持つ。
→ 特に、理科(電気の性質）、技術・家庭科（計測・制御）では、教材作成がしやすい。
 ブロック型からJavaScriptやPythonへ自動変換できる。
→ 中学校、高校のプログラミング教育に、スムーズに移行できる。

micro:bitのプログラミング（短所を克服する）指導 25個のLEDでしか表示できないので、出力表示には工夫が必要である。
• Scratchのようなスプライト(コスチューム）の表示はできない。
• ただし、micro:bitでは、アイコン表示はできる。

 キーボードがないので、数値や文字などの入力にも工夫が必要である。

9

micro:bitによるプログラミング指導
約数の判定プログラム

数値の入力は、プログラムで作成 a = 45b = 3数値を変更する場合
 プログラムの数値を直接変更する。
 キーボードがないので、工夫が必要である。

スイッチボタンの活用
 Aボタンを1回押すと、1ずつ増える。
 Bボタンを1回押すと、1ずつ減る。
 Aボタンを1回押すと、10ずつ増える。
 Bボタンを1回押すと、1ずつ増える。
 A+Bボタンで、リセットする。

10

micro:bitによるプログラミング指導
Scratchのプログラム
 Scratchの右のプログラム
 「どれかのキーが押された」まで待つ
 このプログラムを micro:bit に変更する。
 最初
 コスチューム（Heart Red）
 「a」が押されたとき
 コスチューム（Heart Face）
 「a」以外が押されたとき
 コスチューム（Heart Purple）
11

micro:bitによるプログラミング指導
micro:bitのプログラム

 キーボードからの入力待ちのプログラムを micro:bit のボタンに変更する。

12

micro:bitによるプログラミング指導 下記のプログラムの箇所（の論理式）は、理解しにくい。

＊【ループ】の「くりかえしの先頭に行く」は、追加されて機能<Python>while not (input.button_is_pressed(Button.A)) and not (input.button_is_pressed(Button.B)):
continue
13

micro:bitによるプログラミング指導どのようなプログラムが、考えられるか。
 「入力待ち」を「一時停止」にする。
 上手く動作しない時にその理由を考えさせる。
 それから、改良プログラムを提示する。

考えさせる方法のも、一つの指導方法では

 なお、micro:biｔでは、並列のプログラム（「ボタンが押されたとき」）を作成する。
 プログラミング言語の特徴を生かした教材にする。
14

まとめ
プログラミングの学習教材
 「教材を観て、自分で確認して、自らが納得する」

micro:bitを利用した学習教材
 小学校から高等学校まで接続性のある教材開発が可能である。

micro:bitによるプログラミング指導
 micro:bitの特徴（長所、短所）を生かした教材による指導が必要である。
 本研究は、JSPS科研費JP20K02528（研究代表者：喜家村奨）の助成を受けている。
https://www.u-manabi.net/microbit/kaken/index.html
参考文献
高橋参吉，喜家村奨，稲川孝司：
micro:bitで学ぶプログラミング ブロック型からJavaScriptそしてPythonへ，コロナ社(2019.9).
https://www.u-manabi.net/microbit/
15

NPO法人 学習開発研究所（ILD)からの連絡
 「ICTを利用した学習指導者研修講座」8月特集(第1回）
 日時：2021 年 8 月 1 日(日) 13:00～16:30
 内容：テーマ －高等学校教科情報「情報Ⅰ」授業のために－ 「ICTを利用した学習指導者研修講座」8月特集(第2回）
 日時：2021 年 8 月 21 日(日) 13:00～16:30
 内容：テーマ －初等中等教育におけるプログラミングー
 「ICTを利用した学習指導者研修講座」(第2回）
 日時：2021 年 7 月 25 日(日) 13:00～16:30
 内容：テーマ －ICT を活用した授業実践－
学習開発研究所（ILD）
http://www.u-manabi.org/nc2/htdocs/
 2021年度 ILD研究助成事業：「研究助成基金」のページ
16

micro:bitを利用した学習教材（2） 「FizzBuzz」のプログラム（高校）i=1
while i <= 100:basic.show_number(i)if i % 15 == 0:
basic.show_string("FizzBuzz")
elif i % 3 == 0:
basic.show_string("Fizz")
elif i % 5 == 0:
basic.show_string("Buzz")
else:
basic.show_string("*")
i += 1

高橋：micro:bitで学ぶプログラミング、じっきょう資料、情報教育資料51号、実教出版(2020）
https://www.jikkyo.co.jp/download/detail/61/9992659440
17

20数年前のプログラミング教育の経験から
なぜ、プログラムが必要か 高専1年生対象のFORTRAN、BASIC、Cのプログラミング教育
 例題：「c = a + b」 のプログラム
 電卓で、やってはダメですか？

なぜ、プログラミング言語が必要か？
 大学工学部 3回生のCのプログラミング教育
 例題：成績の集計、ソートのプログラム
 表計算ソフト（ロータス）で、やってはダメですか？

プログラミング教育で、何を教えたいのか。
そのために、どのような例題を用意し、どのように指導するか。
18