すべての記事

レシピはプログラム:くらしの中のアルゴリズム

左にたまご、矢印、まん中に木のスプーンが入ったボウル、もうひとつの矢印、右にクッキーがのったお皿があり、左から右へ手じゅんのように読めます。

「まずヨーグルト、次にくだもの、さいごにはちみつ」。子どもがレシピのとおりに作るとき、その子はアルゴリズムにしたがっています。はじめにあるものを、さいごのできあがりに変える、じゅんばんの決まったはっきりした手じゅんのリストです。

それは、まさにコンピューターのプログラムと同じです。この考え方を教えるのに、画面はいりません。台所はそれをためすのにいちばんいい場所のひとつです。手じゅんは本物で、結果は目に見えて、まちがいはたいていおもしろい(そして食べられる)からです。

レシピとプログラムは同じつくり

作る前に、いっしょにレシピを読んで、それぞれの部分に名前をつけてみましょう。

レシピでは プログラムでは
材料 入力:はじめにあるもの
じゅんばんに番号のついた手じゅん 命令。1つずつじゅんに実行する
「10回まぜる」 くりかえし:手じゅんをくりかえす
「かたすぎたら、牛にゅうを1さじ入れる」 条件:もし…のときだけする
できあがった料理 出力:結果

小さな子に「入力」や「くりかえし」ということばを使う必要はありません。「何がいる?」「まず何をする?」「さいごに何ができる?」と聞くだけで十分です。

かんたんで安全なものを選び、熱いものや刃物は大人がうけもちましょう。ヨーグルトのフルーツカップ、サンドイッチ、スムージー、火を使わないおやつなどです。

じゅんばんは大事?

考えるのにぴったりの質問があります。どの手じゅんは入れかえられて、どの手じゅんは入れかえられない?

ヨーグルトのカップでためしてみましょう。

  1. カップにヨーグルトを入れる。
  2. 切ったくだものを入れる。
  3. 上からはちみつをかける。
  4. 食べる。

2と3は入れかえられる?たぶんだいじょうぶ。見た目が少しちがうだけです。では1と4は?ぜったいにだめですね!ひと組ずつ話してみましょう。「これを先にやったら、どうなる?」

子どもは、じゅんばんを変えても結果があまり変わらないばらばらの手じゅんと、ほかの手じゅんのあとでないとできないつながった手じゅんがあることに気づきます。これは計画を立てることにも、プログラミングにも大切な考え方です。

「ロボットのおうちの人」あそび

この遊びは大人気です。大人が、言われた手じゅんをことばどおりそのままにしかできないロボットになります。

子どもがサンドイッチの作り方を指示します。「パンにジャムをのせて」と言われたら、ふたのしまったジャムのびんをパンの上におきます。「ナイフを持って」と言われても、どちらの手か言われなければ、こまった顔をします。

  • 楽しい雰囲気をたもち、子どもがいやになる前にやめましょう。
  • ひとしきり笑ったら、もっと正しく指示できるように手伝います。「びんのふたをあけて。スプーンでジャムを少しすくって。パン1まいにぬって」。
  • 役を交代して、子どもにロボットになってもらいましょう。

コンピューターもロボットと同じで、言われたことしかしません。はっきりした正しい手じゅんが大切なのです。

くりかえしと条件を見つける

じゅんばんどおりの手じゅんになれてきたら、レシピの中の2つのとくべつな手じゅんをさがしてみましょう。

  • くりかえし: 「10回まぜる」「ボウルがいっぱいになるまで、1さじずつ入れる」。くりかえしながら、いっしょに数えましょう。
  • 条件(もし…): 「バナナが大きすぎたら、半分に切る」「生地がかわいていたら、水を少し足す」。「今回はその手じゅん、いる?」と聞いてみましょう。

ふだんの手じゅんの中から「くりかえし」と「もし」を見つけることは、すべてのプログラムをつくる部品に、やさしくふれる入り口になります。

自分のレシピを書く

さいごに、ほかの人のためのレシピを書いて(またはかいて)もらいましょう。

  • 手じゅんを1つずつ四角の中にかき、四角と四角を矢印でつなぐ。
  • 手じゅんに番号をつける。
  • レシピをためす。大人が書いてあるとおりにやって、ちゃんとできるか見る。
  • うまくいかなかったら、直す手じゅんをさがす。プログラマーはこれをデバッグとよびます。

まだ字が書けない子は、手じゅんごとに絵をかいて、声に出して説明すればだいじょうぶです。

Dologiの「くるまを うごかそう」パズルも同じしくみです。命令をじゅんばんにならべて、車をめいろの中の星まで動かします。命令がひとつでもまちがった場所にあると、車はちがうところに行ってしまいます。

まとめ

  • レシピはアルゴリズム。材料が入って、じゅんばんどおりの手じゅんをへて、料理ができあがります。
  • どの手じゅんは入れかえられて、どれは先にしないといけないか聞いてみましょう。
  • 「ロボットのおうちの人」あそびで、手じゅんが正しくなければいけない理由を見せましょう。
  • くりかえしと「もし」をさがし、子どもに自分のレシピを書いてためしてもらいましょう。

あわせて読みたい:大きな仕事を小さなステップに分けよう:子どもの「一歩ずつ考える力」