導入
「点数が80点以上なら優、60点以上なら合格、それ以外は不合格」のように、条件によって処理を変えたいことはよくあります。それを実現するのが if 文です。
説明
graph TD
A["開始"] --> B{"条件を満たす?"}
B -- Yes --> C["処理A"]
B -- No --> D["処理B"]
C --> E["終了"]
D --> E
if 条件 から end までが1つのまとまりです。条件が成り立つとき(真のとき)、if の中身が実行されます。
score = 72
if score >= 80
puts "優"
elsif score >= 60
puts "合格"
else
puts "不合格"
end
elsif(else ifではなくelsifとつづります)で条件を追加できます。いくつでも書けます。- 最後の
elseは「どの条件にも当てはまらなかったとき」の処理です。省略もできます。 - Ruby の
ifはカッコ()が不要で、代わりにブロックの終わりをendで示します。
やってみよう
score の値をいろいろ変えて、どのメッセージが表示されるか確かめましょう。elsif の行を増やして、条件を細かく分けてみてください。
演習
変数 temperature に 35 を代入し、30 以上なら "猛暑"、20 以上なら "適温"、それ未満なら "肌寒い" と表示してください。
ヒント1を見る
if temperature >= 30 → elsif temperature >= 20 → else の順で書きます。
ヒント2を見る
各枝の中で puts "猛暑" のように表示します。