プログラミング的思考って?

§1 「プログラミング的思考」って?

「プログラミング」って聞くと、コンピューターを使ったむずかしいわざのことだと思うかもしれない。

でも、じつはそれだけじゃないんだよ。

え、コンピューターを使わなくてもプログラミングなの?

そう!たとえば朝、家を出るまでに 顔をあらう → 朝ごはん → 着がえ → 持ち物チェック と順番を決めるよね。

これもプログラミング的思考なんだ。

プログラミング的思考とは

目ひょうを達成するために、手順を考え、順番を整理し、結果をふりかえってかいぜんする力のこと。

それは、次のような場面でも使われています。

・おにぎりを作るとき

・道順を考えるとき

・宿題の計画を立てるとき

・算数の文章題をとくとき

つまり、プログラミング的思考は「コンピューターの世界だけの特別な考え方」ではなく、わたち達が使っている「考える力」なのです。

ポイント:手順があると「さいげん性」が生まれる

同じ手順でやれば、同じ結果になる。これは、科学や料理、スポーツの練習でも大切な考え方です。

プログラミング的思考は、「考える → やってみる → 直す」のくり返しで、頭の使い方がどんどん上手になります。

§2 手順を考える力 ―「アルゴリズム」を使いこなそう―

「手順」ってどこまで書けばよいの?

コンピューターは「あいまいな言い方」が苦手なんだ。だから、正確な指示が大切だよ。

やってみよう:人間ロボットゲーム

これから3つの手順を示します。これだけで、紙飛行機が作れるかな?

① 紙を半分に折る

② 角を折る

③ 飛ばす

うまくいかなかった人、手順があいまいではありませんでしたか?

ワーク 「正確な手順」に書き直そう

紙飛行機を作る手順を、10ステップ以内で書いてみよう。

①(例)A4用紙を、長い辺が横になるようにおく。

②(例)左右の角を中央線に合わせて折る。

§3 「デバッグ」の力 ーまちがいから学ぶー

プログラミングでは、最初からうまくいくことはほとんどありません。

むしろ、「失敗したあとになぜそうなったか考えて直す力」が大切です。

この直す力のことをデバッグって言うよ。

おかしな手順を見つけよう

次の手順で、牛にゅうをコップにそそぐことはできるかな?

① (買って帰ったばかりの)牛にゅうパックを持つ

② コップをつくえの上に置く

③ 牛にゅうを入れる

ここには、「フタを開ける」「どれくらい入れるか」が書かれていません。

ワーク 「手順ミス」を直してみよう

さきほどの、手順を直して、牛にゅうがコップの中に入るようにしよう。

①(買って帰ったばかりの)牛にゅうパックを持つ

③コップをつくえの上に置く

④(    )まで牛にゅうを入れる

答えの例

② 牛にゅうパックのふたを開ける

④ コップの半分

失敗してもいいんだね。失敗が「手がかり」になるんだ。

そう。「なぜそうなったか」を考える力が、問題解決のきっかけになるよ。

§4 生活の中で使ってみよう

プログラミング的思考は、生活のあらゆる場面で使えます。

「朝のしたく」をアルゴリズム化せよ!

「7:30に家を出る」ための手順を考えよう。ただし条件があります。

条件

・朝ごはんは15分

・わすれものチェックを入れる

・順番はなるべくむだがないように

(例)

① 7:00 起きる

② 顔をあらう(1分)

③ 朝ごはん(15分)

④ 歯磨き(3分)

⑤ 着がえ(5分)

⑥ 宿題・持ち物チェック(3分)

⑦ 7:30 家を出る

本日のまとめ

・手順化する力が「考える力」の第一歩

・デバッグで、失敗を次にいかることができる。

・かいぜんのくりかえしが、よりよい考え方や結果をもたらす。

プログラミング的思考は、コンピュータを使わなくても育てられます。

毎日の生活の中で、「どうすればもっとよくできるかな?」と考えてみましょう。