先日中学1年生の授業で、エラストテネスの篩(ふるい)という素数を発見するためのアルゴリズムを学びました。こういったアルゴリズムの処理はプログラミングの得意分野です。
そこで、scratchというプログラミングソフトを用いて、エラストテネスの篩を再現してみました。
今回のプログラムでは、「2より大きな2の倍数を全て取り除く」等といった複雑なプログラムを考える必要があり、正直完成させることができるか心配でした。
しかし、子ども達はプログラミングが得意な子やscratchを触ったことがある子を中心に、グループで試行錯誤しながら取り組み、最終的には少しヒントを与えただけでプログラムを完成させたグループもいて驚きました。
また、その授業での子どもたちからの感想のなかで、いい気づきもたくさんあったので、その一部を紹介します。
・イコールや「または」「ではない」などを多用すればいろいろなものが作れることを学んだ
・しっかりと何回もチャレンジすれば成功できると知った
・僕一人だけで成功することはできなかったが、友達と協力することによってできるようになった
・SCRATCH初めてやってみたけどとても自分で工夫したりして頭を使ったのでとてもプログラミングは面白いと感じた。
・スクラッチはゲームのアプリだと思っていたが勉強にも使えることを知り驚いた。
・数学はプログラミングでできること
・AIをうごかすというのは大変だということ。
こういったことを楽しみながら学べるといいですね。
数学の問題はプログラミングで解くことができたり、身の回りには数学がたくさん隠れています。そんな学びから数学好きが増えてくれるといいな。