校長室より

相手にわかるように(校長室より)

毎年プログラミング学習の話をホームページに載せる時に登場する絵を使って、問題を1つ。

下の図のA地点にロボットが向こう向きに立っています。ロボットは「向きを変えられる」「線の上を進む」「前にだけ歩く」「交差点では必ず止まる」ものとします。

 

さて問題です。

矢印のように進んで、Bに到着するようにロボットに指示をしなさい

 

さてどう伝えましょう。

例えば・・・「まっすぐ行って、つきあたったら左に進め。」
相手が人間なら、これが一番簡単な指示で、到着できるかもしれません。
しかし、この指示ではこのロボットにとっては不備があります。例えば「左に進め」という指示はいけません。横に歩けるロボットならば横歩きをしながら左に進むかもしれませんが、「前にだけ歩く」ロボットですからつきあたったら止まったままです。この指示では左に行けず、Bへ着きません。

どうすれば良いでしょう。

 

「向きを変えられる」とありますから「左に向け」という指示があればよいわけです。

 

命令されたことを正確に行うコンピュータだからこそ、意図した処理を行わせるための正確な命令が必要です。コンピュータは人の思いを推し量ってはくれません。0か1の世界です。正確に動かないとしたら、それはコンピュータが悪いのではなく、使っている方に不備があると言うことになります。

正答例としては「前に4ます分歩く。左に90度向きを変える。3ます分歩く。」となります。


こういった段取り、道筋を一つ一つ丁寧に押さえて進めていくことがプログラムを作るときに大切になります。これが「論理的な思考」ということです。こういう力を、身につけていきましょう、というのがブログラミング学習です。プログラムを作る作業を通して、考え方を身に付けてほしいというねらいがあります。


今日の4年生の学習です。

ITアドバイザーの草野先生が中心となり、イラストのネコを思い通りに動かすプログラムについて考え、作業しました。

 

正しい指示を出さないと、プログラムはきちんと動いてはくれません。
指示が正しければ、ネコはこちらの意図通りに動きます。うまくいったときは、子どもたちから喜びの声が上がりました。


プログラミング教育、プログラミング学習、言葉を聞くと難しそうですが、「論理的な思考」という部分で言えば、学習や生活のあちこちの場面で必要なものであり、コンピュータがなくても日々鍛えられています。うまくいかなくてもキレない、諦めない、考える、試す、その繰り返しです。うまくいくために物事を順序立てて考える。相手がコンピュータでも人間でも同じです。

論理的思考とは、何かを相手にわかってもらうためにとても大切なものです。言葉足らずでいさかいになることが多い小学校時代。

考えながら、振り返りながら人と関わることでわかっていくこと、できるようになることがたくさんあります。大変時間はかかります。言われたからできるというものでもありません。

トラブルはあっても人と関わり続けることは大切ですし、学校はその勉強ができる場所です。体験しながら学び、乗り越え方を身に付けていく場所です。いろいろな活動の中で、経験を積み、相手にわかるように伝えられる力をつけていってほしいです。