進化する高校情報科 ―新学習指導要領の鍵を握る―(5) プログラミングは手立て

神奈川県立茅ヶ崎西浜高校教諭 鎌田 高徳

2進法から10進法の変換は、手計算で十分ではないですか――。

昨年度、全国高等学校情報教育研究会全国大会の「プログラミングで基数変換の仕組みを理解しよう」というタイトルで私が発表した際、会場から上がった質問である。数年前から、いろいろな研究会や研修会に参加するたび、「プログラミング」というキーワードが入った発表タイトルをよく目にするようになった。

今、日本の教育業界は「空前絶後」のプログラミングブームである。文科省や都道府県教委、IT企業、教育現場を巻き込んだ大きなうねりが生じている。

冒頭の質問は、プログラミング教育の在り方を考える上で、とてもいい質問だと感じている。基数変換は情報科だけではなく、「数学A」でも取り上げる内容である。

基数変換と聞いて2進法から10進法、10進法から2進法への変換を思い浮かべた人がほとんどだろう。人間が普段使用している数は、0、1、2…9、10になると桁が上がる10進法である。

一方、コンピューターなどの電子機器は電気信号のデータを0と1の二つの数で処理する。これは、0、1、10で桁が上がる2進法である。

情報科では、情報のデジタル化で取り扱っており、コンピューターの原理を理解するため、必ず教える内容になっている。

あるとき、私は、ただ単に変換の手順をペーパーに書き出して変換の仕組みを演習で覚えさせるだけで十分なのではと疑問に思った。

そこで、基数変換をプログラミングする授業をやってみることにした。

そもそも、深い学びの視点で基数変換の仕組みの理解を考えたときに、何をもって深い学びができたかは、①生徒が自ら基数変換の手順を発見②発見した変換の手順を実際に実行③実行した結果から考えた手順が正しかったのかの検証――という、三つのプロセスが必要なことに気付いた。

手計算による基数変換の仕組みをプログラミングの手順に置き換えることは、皆さんが想像する以上に難しい。

生徒は、基数変換の計算手順をプログラムというツール上の手順に当てはめ、試行錯誤しながらプログラムを作っていく。なんとなく行っていた計算をプログラミングの手順という異なる視点で見つめ直すからこそ、深い基数変換の仕組みの理解につながる。

情報科で「まん延」している「Word、Excel、PowerPointの使い方を覚える授業」は、本来手段のはずのコンピューターやツールの操作方法の習得が目的になってしまう「手段の目的化」が問題だと以前に指摘した。

これから始まるプログラミング教育についても、「特定のプログラミング言語の使い方を覚える授業」にするのではなく、情報科の狙いを達成するための手段と位置付ける授業こそが実施されてほしいと切に思う。

あなたへのお薦め

 
特集