先生のためのアンプラグド・プログラミング教材(2)





お題:交通系電子マネーを使って自動販売機でジュースを購入する

<ねらい>
プログラミング的思考の以下の能力を鍛える
・ものごとを一旦分解してから整理する能力(分解、分類、共通化)
・ものごとを単純化して重要な部分を捉える能力(抽象化、メタ認知)
・やるべきことを順序立てて論理的に考える能力(ロジック、コンテクスト)
・ものごとを解く方法やその手順を考える能力(アルゴリズム、組み合わせ)

1.まずは「順次処理」だけを考えてみる

順次処理:選択ボタンを押す→電子マネーをかざす→残高から料金を差し引く→ジュースを出す
指導箇所:電子マネーの種類を選択するパターンを入れてもいいでしょう。
ポイント:「残高から料金を差し引く」ことを忘れたら無料と同じになります。



2.次に「条件分岐」を追加する

条件分岐:電子マネーの残高を確認する
指導箇所:残高がない場合、どうなるのか調べさせてもいいでしょう。
ポイント:正しい電子マネーのカードじゃないとその後の処理は実行されません。

3.「反復動作」は何かを考えてみる

反復動作:なし
指導箇所:連続購入が反復動作ではないことを理解させる
ポイント:1本購入で完結するので、連続で購入したとしても、それは反復動作にはならない。



4.【応用】他に「処理」や「条件」がないか考えてみる

・現金での購入では処理や条件はどうなるか?

・ジュース等を補充するタイミングは?

・地震などの災害時は無料で飲むことができる自動販売機の場合は?

・昔あった、購入するとルーレットが回って当たったらもう1本無料でもらえる
自動販売機の場合はどうなるのか?

・電子マネーが使える自販機は、実は電子マネーの残高チェックにも使える。
先に残高を確認するパターンならどうなるのか?

5.本当に重要な処理は抜けていないか?

実は、この自動販売機の処理には重要な処理が抜けています。どこが抜けているか児童に問い掛け考えさせましょう。

それは、「品切れチェック処理」と「ボタンのランプ制御」です。

このままのフローだと、品切れの商品を購入した場合、料金だけ差し引かれてジュースは出してくれません。品切れだからです。

このように、児童に問いかけてどこまで気づけるか、もし難しいと感じた場合は少しずつヒントを出してあげましょう。

【重要】発問すればその瞬間から児童は考え始めますが、答えを伝えた瞬間、思考は停止します。

▼Amazonおすすめ本

  

▼次の教材はこちら

おすすめ記事