キッチンでプログラミング(4)
繰り返し(その1)
「今日は3人分のサラダを作ってほしいんだけど。まずは作り方を紙に書いてもらえるかな。」ビットさんが言いました。
「がってんだ。」はじめ君がさらさらっと紙に書きました。
~サラダの作り方(はじめ君)~
1から6を3回繰り返す。
1.レタス1枚を3cm角にちぎる。
2.ミニトマト2個のへたをとる。
3.レタスをお皿にしく。
4.ミニトマトをレタスの上にのせる。
5.コーン大さじ1をレタスの上にのせる。
6.ドレッシング大さじ1をかける。
~~~~~
「できたよ。」はじめ君が言いました。
それを見たかなたちゃんが言いました。「私だったらそんな風には作らないわ。」
~サラダの作り方(かなたちゃん)~
1.レタス3枚を3cm角にちぎる。
2.ミニトマト6個のへたをとる。
3.お皿3枚にレタスをしく。
4.お皿3枚のレタスの上にそれぞれミニトマトをのせる。
5.お皿3枚のレタスの上にそれぞれコーン大さじ1をのせる。
6.お皿3枚にそれぞれドレッシング大さじ1をかける。
~~~
ビットさんが言いました。「はじめ君は1人分ずつ完成させているけど、かなたちゃんは全員の分を同時に作っているのね。プログラムを作るときにもいろいろな考え方があって、人間が見てわかりやすいように作ったり、実行スピード重視で作ったりする場合があるわ。はじめ君の作り方はわかりやすいけど、実際に作ってみると手間がかかるわね。かなたちゃんの作り方はスピード重視の考え方だと思うけど、ちょっと気になるところがあるの。それはね、人数が変わったときに作り方(プログラム)を書き直すのが大変っていうことなの。だから、普通は『人数』を最初に設定しておくのよ。」
~サラダの作り方(ビットさん)~
1.人数を3にする。
2.レタス(人数×1枚)を3cm角にちぎる。
3.ミニトマト(人数×2個)のへたをとる。
4.人数分のお皿にレタスをしく。
5.人数分のお皿のレタスの上にそれぞれミニトマトをのせる。
6.人数分のお皿のレタスの上にそれぞれコーン大さじ1をのせる。
7.人数分のお皿の上にそれぞれドレッシング大さじ1をかける。
~~~~~
【解説】
ここでは繰り返しという制御構造を紹介しました。ちょっとわかりにくかったかもしれませんが、はじめ君が全体を繰り返しているのに対して、かなたちゃんはそれぞれの工程を繰り返しています。みなさんがサラダを作るときはかなたちゃんのような作り方をするのが普通だと思います。
このプログラムは大変簡単な例ですが、こんな小さなプログラムでも作る人(プログラマー)によって異なったものができ上ります。大きなプログラムや、大量のデータを処理するプログラムでは作業手順(アルゴリズム)の良し悪しによって処理のスピードに大きな差が出てきます。また、人間が見てわかりやすいプログラムを書くことも大切です。それによって、将来プログラムを変更する必要ができた時に簡単に変更できるなどの利点があります。
この記事が気に入ったらサポートをしてみませんか?