プログラミングを始めたてのころは、まず逐次実行(命令はひとつずつ)やループ(繰り返し)の概念を学んでいきます。
しばらくすると、プログラムがとても長くなり読みにくくなっていきます。
ロボットタートルズでかなり長いプログラムを組めるようになり、横で折れ曲がっても続いています(笑)
これぐらい長いプログラムを組めるようになり、氷の壁や障害物をすべてアンロック(解除)できているといよいよサブルーチンの出番です。
カエルの絵のカードの関数化(サブルーチン化)はもうちょっと大きくならないと難しいだろうなーと思っていました。
しかし、どうしてもやりたいから説明せよと(汗)
うーん、説明が難しいw
ダメ元でやってみることに
上の長めのプログラムからはじめることにします。
そこから、小さいプログラムに注目します。
たとえば、ミサイル発射したあとは大体前に進みます。
「ミサイル+進む=みどりのカエル🐸」
というように定義します。
そして、これまで「ミサイル+進む」と書いていた箇所を「みどりのカエル🐸」に置き換えます。
するとプログラムが短くなりました!
こうすることで、同じプログラムを2回書くことなく、短縮できます。
さらにサブルーチン内のプログラムを変更することで、元のプログラムを何箇所も修正する必要がなくなるので効率的です。
これを見た娘は「そういうことか〜!」と言って、更に別のカエルを作りはじめました。
ほんとに分かったんかなぁと半信半疑で見ていると、「左に曲がる+進む=ピンクのカエル」を作り、プログラムを正しく置き換えることが出来ていました。
子供の理解力すごいw
カエルを使った迷路をはじめからやってみたいとのことで、簡単なのを作り、やってもらいました。
カエルの使い方はバッチリ理解していて、なんとバグ2回で宝石までたどり着きました。
出来たプログラムはこちら↓
みどりのカエル、青のカエル、ピンクのカエルを3つつくり、プログラムにきちんと埋め込めています。
バグ2の事をなぜか「2拍子か〜」と残念がっていました(笑)ピアノのやり過ぎでしょうかw
ロボットタートルズは楽しくロジカルシンキング能力を育めますよ。
よかったら是非家族でボードゲームを楽しんでくださいね。
クリックいただけますと頑張れます!よろしくお願いいたします!
コメント