いろんな見方で仲間分け 〜データ構造のお勉強①〜
プログラミングは、お料理を作るみたいに手順をきちんと考えることが大切というお話を、コロッケの作り方を例にお話ししました。それに必要なものというのをそろえてみよう!ということも以前書いてみました。プログラミングは、命令ですが、命令を作り出すために手順と材料をしっかり考えてあげなくてはいけないので、お料理の手順とか、お洋服を選ぶ手順とか、モノをさがす手順とかちょっとした日常のことで考える力というのはつけることができていきます。ミングちゃんみたいに甘えん坊だと、なかなか考えるのも難しいかもしれないですが(笑)。
材料ってなんだったかな?
今回は、材料の部分をじっくり考えてみようかなと思います。以前に例にだしたコロッケの材料を並べてみますね。
ジャガイモ、ひき肉、玉ねぎ、小麦、パン粉、卵、油、塩、こしょう
それから、次のものもお料理には必要ではないかなと付け足していました。
お肉を炒めるフライパン、ジャガイモをゆでるお鍋、ジャガイモをつぶすマッシャーやフォーク、茹でるためのお湯(お水)、コンロ。炒める時の木ベラ、ジャガイモを入れるためのボウル、野菜を切る包丁やまな板、手を拭くタオルやふきん、揚げた時に上げておくパットとあみ、コロッケを並べるお皿
材料を仲間わけしてみよう!
これらを並べてみると、必要なものということで大きくまとめられますが、一つ一つ種類に分けてみるとどうなると思いますか?いろんな分け方ができると思いますが、次の仲間で分けてみてください。
- お肉
- 野菜
- 調味料
- お鍋の仲間
- 調理用具
- 食器
こんな風に分けてみると、お家にあるものなのか買わなくてはいけないものなのか整理できたり、どこで買えばいいかなと考えることができたりします。分け方にもいろいろな考え方ができるので、家にないもの!で分けてもいいですし、色で分けてみてもいいですし、食べ物とそうでないもので分けてもいいですし、液体?固体?で分けてもいいかもしれません。材料だけだったら、切った方がいいもの、ボウルにまとめて入れるものなど、いろんな分け方ができますね。
仲間わけするといいことがある
仲間分けをしてみると、どこで買えばよりか、どこに用意をしておけばいいかなど考え出す時にとても便利です。このように必要な材料を仲間分けしてあげるだけで、考え方もすっきりするし、それを使う時にも取り出しやすくなったりします。そして、もし同じ仲間なら、炒めるということを一緒にできてしまったり、混ぜるということで一緒にしてしまったりして、次の手順もまとめてあげることができます。
http://benesse.jp/contents/hint/spring/04/03.shtml
仲間分けの遊びの例も上記にありました。紹介されているような遊びから、仲間わけのおもしろさを知ってみるのも楽しいかなと思います。
仲間に分けてあげることって、ゲームのようですが、実はとっても頭を使うんですよね。たくさんの分け方ができて、それを使う時に便利になるように工夫しなければいけないからです。そして、これとこれがどこが共通点かなと探してあげたりすることも、次の作業をする時に役立ちますね。火の近くで使うもの、たとえばコロッケを揚げた後においておく金属のパットをコンロから離れたテーブルに用意して置いていたら、コロッケを揚げて置きたい時に困ってしまいます。火の近くで使うものだからという仲間で考えてあげて用意をしておかないと、時間がかかったり、困ったりしてしまうんです。
プログラミングでも使うものを仲間わけしてあげます。その次の作業のためにも必要ですし、コンピュータをムダなく動かすためにも必要なんです。そのコンピュータのためのお話はまた次回にしますね。