条件分岐とは
プログラミングの世界では特定の条件ごとにプログラムの処理を変えるということが良く行われます。これを条件分岐といいます。
たとえば「お金が500円以上あれば(条件)チョコレートを買う(処理)」といった感じです。
if文を使った条件分岐
if文をつかうことで、「~であれば~をする」といった条件分岐をコードに組み込むことができます。
上の例をコードにしてみると以下のような感じになります。
money = 1000
if money >= 500: #お金が500円以上の場合
print("チョコレートを買います") #チョコレートを買う
では具体的な書き方について説明していきます。
if文は「if 条件式:」のように書きます。条件式というのは上のコードでいうとmoney >= 500の部分で、よく二つの値を比較するために「>」や「<」といった比較演算子が使われます。比較演算子は以下の表の通りです。
比較演算子 | 意味 | 例 |
> | 左辺が右辺より大きい | 5 > 4 |
< | 左辺が右辺より小さい | 3 < 7 |
>= | 左辺が右辺以上 | 5 >= 4 |
<= | 左辺が右辺以下 | 3 <= 8 |
== | 左辺と右辺が等しい | 1 == 1 |
!= | 左辺と右辺が等しくない | 1 != 2 |
上の表の他にも is や not などの演算子がありますが、今はおいておきます。
if文の条件式が成り立つ場合に行わせたい処理は改行したあとにインデント(文頭に空白を開けること)をしてから記述します。if文の後のインデントは半角スペース4つ分です。一般的なエディター(コードを書くためのツール)ではif文の後で改行をすると、自動的にインデントがされますが、手入力で行う場合はスペースキーを4回押すか、Tabキーを一回押します。
Pythonの場合はif文の後にインデントがあるコードのみをif文の処理として扱うので、インデントがされていない処理はif文の中の処理とはみなされません。
例)二つの処理がif文の中に含まれている
if money > 500:
print("チョコレートを買いました。")
money -= 100
例)インデントがされていないため、money -= 100は条件式に当てはまらなくても行われる
if money > 500:
print("チョコレートを買いました。")
money -= 100
問題
①if文を使って変数moneyが1000以上である場合、「タクシーを使います」と出力してください。
②if文を使って変数scoreが40未満の場合、「赤点です」と出力してください。
money = 2000
#moneyが1000以上の場合、「タクシーを使います」と出力する
score = 70
#scoreが40未満の場合、「赤点です」と出力する
答え
money = 2000
#moneyが1000以上の場合、「タクシーを使います」と出力する
if money >= 1000:
print("タクシーを使います")
score = 70
#scoreが40未満の場合、「赤点です」と出力する
if score < 40:
print("赤点です")
[解説]
①ではmoneyが1000以上である場合というのが条件式なので、比較演算子の「>=」を使います。
②はscore40未満(40は含まれない)なので、「<」を使っています。
インデントを忘れないようにしましょう。
次のステップは 真偽値とはです
プロフィール
大学卒業後SEに就職、現在は退職しフリーランスとして活動中。
『初心者でも挫折せずに一人でプログラミングを学べる』をモットーに、コードラボJPを開設
お問い合わせ等はcodelabsjp@gmail.comまで