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





お題:各駅停車の電車に乗って目的地A駅で降りる(ただし、A駅は終点ではない)

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

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

 順次処理:電車に乗る→電車が駅に止まる→電車を降りる
指導箇所:今回考えるのは終点までは行かないパターンとして考えさせる



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

 条件分岐:止まった駅はA駅か?
指導箇所:目的の駅で降りる場合の条件とは何かを考えさせる
 ポイント:A駅ではない場合は乗り続けるが、反復動作がないと線の位置が定まらない

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

 反復動作:各駅停車の電車は終点まで走る
指導箇所:乗る乗らない関係なく、電車は電車で走り続けていることを指導しておく



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

 ・電話がかかってきたので途中下車し、次の電車を待ってもう一度乗車する場合

 ・乗り換えがある場合はどうなるのか。路線は2路線必要です。

 ・乗車する際、ドアとホームの隙間にスマホを落としてしまい、
そのまま乗車した場合のその後の正しいフローはどのようになるか。

 ・反対方向の始発駅に行ってから目的の駅まで座って行くという案がでた場合、
それは区間外乗車となり、不正乗車にあたると学習することができます。

▼Amazonおすすめ本

  

▼次の教材はこちら

おすすめ記事