【読み物Vol.2】「もし雨なら傘を、晴れなら手ぶらで」が思考の原点。プログラミング的思考とは?

前回、プログラミングは「コンピュータへの指示書作り」だと言いました。
しかし、ただ「やれ」と言うだけでは、複雑な仕事は任せられません。

コンピュータは「融通の利かない、超真面目な新人バイト君」だと思ってください。
彼らに複雑な仕事をさせるには、たった2つの「言い回し」を覚えるだけでOKです。

1. 魔法の言葉①「もし〜だったら(If)」

例えば、あなたがバイト君に「コンビニでお弁当を買ってきて」と頼むとします。

  • あなた:「お弁当買ってきて。無ければおにぎりでいいよ」
  • 人間:(お弁当コーナーを見る)「あ、無いからおにぎり買おう」

人間ならこれで通じます。
しかし、コンピュータ(新人バイト君)はパニックになります。「『無い』って何? どのお弁当? おにぎりは何個?」

プログラミングでは、こう伝えます。

もし(お弁当の在庫が 1個以上 あるなら)
→ お弁当を1つカゴに入れる
そうでなければ(在庫が 0 なら)
→ 鮭おにぎりを2つカゴに入れる

これを「条件分岐(じょうけんぶんき)」と呼びます。
「Aプランで行くか、Bプランで行くか」を事前に決めてあげることで、コンピュータは迷わずに動けます。

2. 魔法の言葉②「〜の間、繰り返す(Loop)」

次に、バイト君に「棚にある商品を全部数えて」と頼むとします。

  • 悪い指示:「商品を数えて」
  • コンピュータ:(どうやって? 右から? 左から? 何回?)

プログラミングでは、こう伝えます。

商品が目の前にある間、以下を繰り返せ:
1. 商品を手に取る
2. カウンターを+1する
3. 商品を隣の箱に移す

これを「ループ(繰り返し)」と呼びます。
人間なら「1000回やって」と言われたら嫌になりますが、コンピュータは文句一つ言わず、0.01秒で終わらせてくれます。

3. プログラミング的思考 =「段取り力」

よく「プログラミングを学ぶと頭が良くなる」と言われますが、これは「物事を分解して、順序立てて考える癖(ロジカルシンキング)」がつくからです。

  • 「部屋を片付ける」という漠然としたタスクを…
  • もし ゴミなら捨てる」
  • もし 服なら畳む」
  • 「これを床が見えるまで繰り返す

このように分解できるようになると、仕事も家事も効率化できるようになります。
プログラミングは、人生の「段取り力」を鍛える最高のトレーニングジムなんです。

まとめ

  • コンピュータは「条件(もし)」「繰り返し(ループ)」で操る。
  • あらゆる複雑なアプリも、実はこの2つの組み合わせで出来ている。
  • この考え方を身につけると、日常生活の「段取り」が上手くなる。

次回は最終回!
プログラマーが「魔法使い」と呼ばれる理由。
面倒な作業を一撃で終わらせる「関数(必殺技)」の秘密に迫ります!

タイトルとURLをコピーしました