🌟

超初心者のためのIF文

1 min read

エンジニア思考になるために重要な、
そして新人プログラマーの最初の壁、If文について詳しく見ていきます。

If文を征するものはプログラミングを制すると言われるほどです。しっかり理解していきましょう。

If文とは

条件によって処理を分岐させるための構文であり真の場合と偽の場合で処理を分けて記述することが出来ます。

...と言われてもよくわかりませんよね。
ですので概念を理解する前に使用例や使い方を見ていきましょう。一問、クイズを用意しましたのでお答え下さい。

問題

問:
アナタは自宅から最寄りの駅まで歩いています。横断歩道を渡ろうとしましたが車がたくさん走っていて、信号が赤色です。どうしますか。

答:
止まりますよね。前進すると死にます。

この時あなたの思考回路はどうなっているでしょうか。If文で例えて見ていきます。

If文的思考

当たり前の話ですが、信号の色によって行動を変えたと思います。
つまりあなたは、

If("信号が赤色"){
  Me.Stop;
}

というコードを実行したことと同義となります。

次に、信号が青であれば横断歩道を渡ると思います。つまり、

If("信号が赤"){
  Me.Stop;
}
If("信号が青"){
  Me.Walk;
}

というコードが加わります。ですが、信号が青でも車がまだ走っており、横断歩道を渡れない場合はどうしますか?とうぜん"青色でも"止まりますよね。以下のコードとなります。

If("信号が赤"){
  Me.Stop;
}

If("信号が青"){
 If("危険がいっぱいなら"){
   Me.Stop
 }else{
   Me.Walk;
 }
}

少しだけ、理解出来たかと思います。
人間は、その時々に応じて様々なIF文を処理できるのです。状況に応じて行動を変える事は人間が最も得意とする分野です。

ですが、プログラム君に「最寄り駅まで歩け」という命令だけを与えたら、信号が赤色でも歩き続けます。なぜならばこのプログラム君は「最寄り駅まで歩け」というコードしか与えられていないからです。

プログラムは命令された言葉でしか行動をしないので、細かく指示を与えてあげなければいけないのです。
最寄り駅まで歩け という命令でも洗い出すとたくさんの分岐があります。

  • 信号の色によって行動を変える
  • 障害物がある場合、避ける
  • 進路の道が工事中だとルートを変更する
  • 人にぶつからないように歩く
  • 子供には特に注意をして歩く
  • 自転車に気をつける

など、皆さんが意識せずとも行っている動作をプログラムは書いてあげなければ行動出来ません。

それを皆さんが使用するプログラミング言語でプログラム君に命令してあげるのが仕事です。

最後に

何となく理解出来ましたでしょうか?
Ifを上手く書くことはベテランのプログラマーでもとても難しいと言われています。

大事な事はIf文の書き方を覚える事では無く
If文の考え方を身に付けてください。

Discussion

ログインするとコメントできます