近隣の小学校で、プログラミングを取り入れた授業を外部講師としてサポートしてきました。
・対象の学年:6年生
・対象の教科:算数科
・単元:速さの表し方を考えよう
「速さ」
大人にとってはイメージしやすいことでも、車の運転などの経験がない子供にとっては、時速〇〇kmなどは、一体どれくらいの速さなのかイメージが掴みにくいところです。
計算の方法としては
速さ=距離(道のり)÷ 時間
時間という単位量あたりに進む距離として、答えを導き出します。
今回は、プログラミングを取り入れることで、この内容について視覚的な理解を促すことを目指しました。
1時目:誰が一番速いのか?
1時目は、
「Aさん、Bさん、Cさんのうち、誰が一番速く走ることができるでしょうか?」
という教科書の例題を、プログラミングで視覚的に表してみました。
走った距離(m) ÷ かかった秒数 =速さ
という計算をして、その結果から誰が早いかを導き出すことに加え、
プログラミングにその演算を取り込んで、実際に誰が速いのかをPC上でシミュレートします。(写真が実際のプログラムです)
今回はPC室でScratchを活用しました。
次の様な流れです。
(1)「〇〇歩うごかす」というブロックの「〇〇歩」の数値を変えて、ねこが動く「速さ」が変化することを体験しました。
(2)ねこが動いた後、画面の右端に行ったっきりで帰ってきません。
そこで「X座標、Y座標」を使ってスタート位置を設定しました。
※「ずっと」のブロックの中に「次のコスチュームにする」を入れています。走っていることを表現するためのものです。
(3)例題にある3人の「速さ」を計算します。その後、Scratchの「演算」の中から、何を使えば例題の計算を速さとして表現できるのかを考えて、試してもらいました。(例題のAさんだけ)
(4)Aさんの速さを「わり算」の演算ブロックを使って表現できた後は、Bさん、Cさんと増やしていき("ねこ"の複製を教えました)
・誰が一番速いか?
・計算の答えと合っているか?
を確認します。
2時目:道のりの表し方を考えよう
例題:時速〇kmで飛ぶことができる「鳥」がいました。3時間飛んだときの道のりは〇kmでしょうか?
また、4時間飛んだとき、5時間飛んだときの道のりは〇kmでしょうか?
これを計算して求めることに加えて、プログラミングで視覚的に表現することにトライしました。
次の様な流れです。
(1)行ったっきりにならない様に、今回は先に「X座標、Y座標」を使ってスタート位置を設定しました。
「スペースキーが押されたとき」スタート位置に戻るプログラムを用意して、実際に試してみます。
(2)「〇回繰り返す」ブロックを使って、中身は1時目と同様のプログラムを組んでみます。「〇歩」はそのままで、「〇回繰り返す」の数字を書き換えるとどう変化するのかを確かめました。
「〇回繰り返す」の数が大きくなると、ねこが走る長さが長くなる。数が小さいと走る長さが短くなることに気付いていきます。
(3)ねこが走る長さが見た目に分かりにくいので、プログラムの中に「ペン」を使い、動きの軌跡を描く様にします。
「ペンを下ろす」を加えた時にどうなるか、試してみます。
何度も試しているうちに、ペンで描かれた線が何本も重なってしまい、どの軌跡か分かりにくくなることに気付きます。そこで「消す」ブロックを使います。
「スペースキーが押されたとき」に、ねこがスタート位置に戻り、ペンも消すというプログラムを作りました。
これで、道のりが見えやすくなりました。
(4)例題を計算します。
(時速70kmで飛ぶ鳥が、3時間、4時間、5時間飛んだ時の道のりは、〇〇km?)
その結果をプログラムで表現するにはどうしたらよいかを考えて、試していきます。
「〇〇歩動かす」→「70歩動かす」(速さ)
「〇〇回繰り返す」→「3回/4回/5回繰り返す」(〇〇時間、とみなしてみる)
これに気づいた児童は、どんどん自分で数字を変えて試していきます。
他の子の様子を見て気付きを得る子もいますし、他の子に教えてもらっている子もいます。
(5)全員が例題を使ったプログラムを作り終えた頃合いで「3匹並べてみたら?」と声をかけました。(中には、早々と3匹を並べている子もいました)
前時で学んだプログラム(ねこの複製、座標での位置の設定)を思い出して応用している様子を、あちこちで見ることができました。
試行錯誤の結果、数直線を表す児童が出てきた
(6)例題の答えと、プログラミングで3匹並べて表現した道のりを見比べて、計算結果とプログラムが合っていることを確かめます。
この後は、児童の創意工夫が膨らみます。
ペンの色や太さ、ねこの速さ、繰り返す数などを思い思いに変えて、どういう結果になるのか試していました。
その中に「自分自身のクローンを作る」というブロックを活用した児童がいました。
その結果がこの画像です。
クローンという「ねこ分身の数(=〇〇回繰り返す)」によって、より分かりやすく表現できていました。
3時間進んだ(3回繰り返す)プログラムでは、ねこが3匹に、4では4匹、5では5匹です。
児童の主体的な試行錯誤の結果、「ペンの軌跡の長さで道のりを表現する」というこちらの想定を超えて「数直線の考え方」が表現されていました。
この児童の画面をプロジェクターで投影し、クラス全体で共有して、この授業を終えました。
先生の感想の中に、
「普段おとなしく口数の少ない児童が、今日は楽しかったと伝えてくれた」
「じっくり取り組むことが得意ではない児童が、ずっと座って取り組むことができた。学習内容も理解していた」
「前時の内容を応用し、こちらの予想以上の学習効果がみられた」
という言葉がありました。
わずかな時間でも、その場ですぐに結果を確認しながら試行錯誤を繰り返し、表現を広げたり思考を深めてくことができるのは、プログラミングの良いところだと、子供達の姿を見ながらいつも実感しています。
プログラミングというと「難しいこと」と思う先生も多いと思いますが、
子供達が理解しやすいシンプルなプログラム(当然、先生にも理解しやすい)を活用し、それが学習に役に立つことを体験していただけたらと思います。