こどもとIT

相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用

2017年10月10日、相模原市教育委員会は、2020年のプログラミングの必修科目化に先駆け、全市立小学校の4年生の児童(約6000人)がプログラミングを体験する授業を実施すると発表した。

また、この取り組みについて、10月23日にメディア向けの授業公開が行われた。相模原市立青葉小学校の4年生が、算数の「およその数の表し方を考えよう」の単元にて、四捨五入のプログラムを作成し、およそ12になる数値を調べるという授業だ。

「およそ12」を確認するプログラムをScratchで作成

児童たちはこの公開授業の前に、NHK for Schoolの「Why!?プログラミング」に沿った形で、Scratchをツールとして使い、「壊れた魚を動かす」「文房具でシューティングゲームを作れ」の2時間のプログラミング授業をすでに体験している。今回が児童にとって3回目のプログラミングの体験授業となった。

授業の流れとしては、まずこれまでの算数の授業で習った「四捨五入」についての復習から始まり、「四捨五入した時に12になる値は何か?」と教師が問うと、児童たちからは「11から13」「11.5から12.4」などいくつかの意見が出た。

その後、四捨五入するプログラムの流れと、今回使用するScratchのブロックのビジュアルを模したパネルを教師がホワイトボードに貼り、「四捨五入してくれるプログラムをつくろう」という課題が児童に出された。その後10分間を使って、児童たちはScratchを使ってプログラムの作成に取り組んだ。

相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 四捨五入したら12になる“およそ12”の数を考える児童たち
四捨五入したら12になる“およそ12”の数を考える児童たち
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 四捨五入するプログラムの流れと、使用するScratchのブロックを模したパネルを提示し、あらかじめプログラムの形をイメージしやすくする
四捨五入するプログラムの流れと、使用するScratchのブロックを模したパネルを提示し、あらかじめプログラムの形をイメージしやすくする
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 1人1人が考えながらプログラムを作成する。すぐに作成できて残り時間はScratchをカスタマイズして遊ぶ子もいれば、どうやるのかわからず、教師に助けを求める子も
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 1人1人が考えながらプログラムを作成する。すぐに作成できて残り時間はScratchをカスタマイズして遊ぶ子もいれば、どうやるのかわからず、教師に助けを求める子も
1人1人が考えながらプログラムを作成する。すぐに作成できて残り時間はScratchをカスタマイズして遊ぶ子もいれば、どうやるのかわからず、教師に助けを求める子も

10分が経ったところで、いったんプログラミングは終了し、「四捨五入のプログラムはどのように組めばいいか」と先生が問いかけると、多くの子どもの手が勢いよく挙がった。指名された子どもが1人あたり1つのブロックを配置する形で、4つのブロックが正しく配置される。

相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 ブロック1つごとに、多くの児童の手が挙がる
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 ブロック1つごとに、多くの児童の手が挙がる
ブロック1つごとに、多くの児童の手が挙がる

次に、作成したプログラムに、児童が「およそ12になる」と思う数字を自由に入れて、いくつになるかを調べる時間が10分間与えられた。児童は自由な数字を入れてその四捨五入された結果を書きとめる。

相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 規定された数値ではなく、自由な数字を確認していく
規定された数値ではなく、自由な数字を確認していく
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 中には、プリントの裏面にまでたくさんの数値を書きとめる児童も
中には、プリントの裏面にまでたくさんの数値を書きとめる児童も

10分後、プログラミングの時間が終了すると、「ああー!」と児童たちから悲鳴が上がり、「これでパソコン終わり?」「早い」「もっとやりたかった」などとプログラミングに意欲的な声も上がった。

「どの数字がプログラムで12になったか?」と先生が問いかけると、児童たちからは、「11.5」「11.54」「12.3」「12.41」「12.49」「12.4999999」などさまざまな数字があがり、最終的に、「四捨五入の考えを使うと、およそ12になる数は、11.5以上、12.5未満である」とまとめられた。

相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 プログラムを使って「12」になった数を発表する児童たち
プログラムを使って「12」になった数を発表する児童たち
相模原市、全市立小学校でプログラミング体験授業――Scratchで作成したプログラムを算数の学習に活用 まとめられた黒板
まとめられた黒板

授業の最後で、生活の中で「以上」「未満」という言葉を使ったことがあるかという問いには、「おもちゃの年齢で、3歳以上」「18歳未満」などの答えがあがっていた。

「各教科の学習を進める上でプログラミングを活用する」という目的も

相模原市立 総合学習センターの渡邊茂一指導主事は、今回プログラミングを算数の授業に取り入れたねらいに関して、「相模原市では、プログラミング教育を進める上の学習活動には2つあると捉えています。1つ目が『プログラムそのもので問題を解決するためのプログラミング』、2つ目が『各教科の論理的思考を育てる・学習を進める上でプログラミングを活用する』です。今日は後者の授業でした。プログラムを使わずに、“12.49”という数がおよそ12になるかどうかを児童個人が確認するのは困難ですが、プログラムを使えば、自分の考えた数字を容易に確認できます」と解説した。

順番に自由な数値をScratchのプログラムに入れて確認する児童

「算数という教科の学習という面から見れば、子どもたちにその場でプログラミングを作らせるのではなく、あらかじめ作っておいたプログラムに子どもたちが数字を入れて確かめる形でも良かったのではないか」という質問には、「プログラミング体験を重ね、その思考を学ぶこともプログラミング授業の目的の1つであるため、たとえ今日の授業においてプログラミングが第一の目的でなかったとしても、児童自身がプログラミングを行うことに意味があると考えています。さらに、アルゴリズムを自分で組み立てること自体が算数の学習にもつながります」とした。

また、今回授業を行ったクラス担任の内藤友子先生は、「子どもたちのプログラミング授業への感想は、『とても楽しい』というものが多く、非常に関心が高いです。今回プログラミングを使って一番良かったのは、児童が自分が確かめたいと思った自由な数字をすぐに確かめられること。算数が苦手な子どもも、プログラムを作ったことで、12.5は13の仲間だとすんなり理解することができました。プログラミングが楽しいという気持ちから何かを学べる子もいるのではないでしょうか」と語った。

池辺紗也子