午前の部は中級コースに突入しております。まず始めにScratchでアナログ時計を作るという課題です。
この課題、手前味噌ですがはなかなかいいものだと思うのです。
初級コースで作ったデジタル時計はプログラミングに親しむのに良いものでした。対してアナログ時計は算数に親しむ良い機会だし、プログラムのバージョンアップというか、改良の道筋がハッキリとする良い課題なのです。
まずは算数で苦手続出時計単元。秒針は1秒で6度動いて、長針は1分で6度動いて、短針は1時間で30度動く。
小学生にとってはイヤーな単元です。でもこれが分かってないとアナログ時計は動かせません。
そしてそのことが分かって、針の動かし方が分かって完成!と思っても、ちょっと待てよ。。。となるのです。
秒針や長針は1秒ごと、1分ごとに動いても何にも違和感がないのですが、短針が1時間ごとに動くというのはかなり気持ち悪いのです。やはり短針はジワジワと、一見すると動いているのが分からないけれど動いているというモノでないといかんのです。
そうすると短針は1分間で0.5度動くんだとかの知識が必要だと気が付きます。そしてそれをどう表現するか。
それが分かれば長針もジワジワ動かしたい。長針は1秒間で0.1度動くのです。
さて、ここまでやって秒針は?となるわけです。秒針は1秒間で0.1度です。これが分かっても今までと同じやり方が通用しません。秒針だってステップ秒針ではなくスイープ秒針を表現したい。これには現在の時間を取得するやり方では実現できません。
そういうわけで算数の勉強にもなるし、プログラムとしても課題がたくさんでとてもいいものだと思います。Scratchはネットにアクセスしたら誰でも使えるものなので、一度アナログ時計作りにチャレンジしてみてください。大人でも面白いと思いますよ。
午後の部ではセンサーを使った往復運転に取りかかり始めました。考えながらプログラムをしていくので時間なんてあっという間に過ぎてしまいます。来週には単純な往復はできるようになるのかな。簡単なようで結構難しいのです。でもなかなかの集中力で乗り切ってくれてましたよ。