自由研究なにする? 算数クイズで身につく「プログラミング的思考」

西日本新聞 塩田 芳久

 本年度から、小学校で始まったプログラミング教育。初めての授業に役立つ、九州工業大情報工学部の中茎隆教授による「プログラミングが学べるオンライン教室」第2弾は、プログラミング的な思考を体験できる算数クイズだ。動画を見ながら楽しく学べる。夏休みに家族と一緒に挑戦してみてはどうだろうか。

寄稿:九州工業大情報工学部・中茎隆教授 

 小学校でプログラミング教育が必修化となりました。必修化と言っても教科としての「プログラミング」が新たに誕生するわけではありません。では、プログラミング教育が始まると、みなさんの学校での学習はどのように変わるのでしょうか?

 実は、プログラミング教育と一言で言っても、その実施方法は自治体によって違いますし、学校によって違う場合もあります。例えば、5年生算数の単元「正多角形と円」では、タブレット画面上に「正多角形を描かせるプログラム」を作成する活動を通して、単元の内容を深く学ぶことができます。福岡県飯塚市では総合的な学習の時間において、「身の回りで役立つ」をテーマに、人型ロボット「Pepper(ペッパー)」を活用したプログラミング学習が行われています。他にも国語、理科、図画工作、音楽などさまざまな教科・単元でプログラミング学習が取り入れられようとしています。プログラミングを新たな学びの「道具」として活用し、学習を深めるのが狙いです。

 一方、プログラム(コンピューターへの命令書)を作成する活動には、高度に論理的思考が求められます。まず、課題を達成するプログラムを作るために、必要となる処理の種類や個数を整理します。続いて、それらを組み立てる順番を検討しながら、プログラミング言語(※1)を使って、プログラムを実際に組み立てます。そして、プログラムの実行結果を観察し、自分の意図した動きとなるようにプログラムの修正や改良を行います。これら一連の活動で必要となる分析力・思考力を「プログラミング的思考」と言います。小学校におけるプログラミング教育では、このプログラミング的思考を育むことが真の目的となっています。

 この記事では、みなさんにプログラミング的な思考を体験してもらおうと思います。「数の不思議」をテーマに算数クイズを考えてみました。難しいですよ。準備はいいですか。

【算数クイズ】

1+2+3+4+5+…のように自然数を足していくと、計算結果はどんどん大きな数になります。それでは、1+½+⅓+¼+⅕+…のように自然数の逆数(分子と分母を入れ替えた数)を足していくと、計算結果はいくつになるでしょうか?

 「1と2の間の数」「5と6の間の数」のように答えてください。

 まずは予想してみましょう。少し計算をしてから予想するのも良いでしょう。

 プログラミング言語Scratch(スクラッチ、※2)を使ってプログラミングに挑戦してみましょう。計算してみると予想外?!の結果になります。予想が当たった人、すばらしいですね!

スクラッチを使って作ったプログラム

 ホームページを見ると、初心者向けにスクラッチの使い方とプログラムの作り方を説明した動画を見ることができます。トップページのメニューにあるスクラッチをクリックしてみましょう。パソコンやタブレットを使う際には、家の人と良く相談して、時間を決めて、目や体が疲れないように休みながら進めましょう。

    ◆    ◆

 この課題を達成するプログラムを作るためには(1)1、½、⅓…のような分数(2)足し算(3)繰り返しの計算…が必要となります。プログラミング言語を使って処理を組み立てる際には、1+½の計算結果に⅓を足す、その計算結果に¼を足す、その計算結果に⅕を足す…といった考え方をしていきます。そして、自分の意図した動きとなるように工夫しながらプログラムを完成へと近づけていく活動を行います。

 「プログラミング的」という言葉が象徴するように、プログラミング言語という特定のルールの枠内で思考を働かせること、そのことが「プログラミング的思考」の本質と言えます。

〈注釈〉

 ※1 コンピューターに対して動作手順、動作方法、動作内容などを適切に指示するために使われる言語体系。人工的に構成された規則・文法をもつ。メジャーなものでJava、PHP、C++、JavaScriptなどがある。

 ※2 子どもの利用を想定したビジュアルプログラミング言語の一つ。プログラムに必要な要素をパーツ(ブロック)化し、それをマウス操作でつなげるだけでプログラミングができる。

PR

教育 アクセスランキング

PR

注目のテーマ