条件分岐
プログラミングにおける意思決定は、実生活における意思決定と似ています。プログラミングでも、ある条件が満たされたときに、あるコードのブロックが実行される必要があります。
プログラミング言語では、制御文を使って、ある条件に基づいてプログラムの実行の流れを制御します。プログラムの状態の変化に応じて、実行の流れを進めたり、分岐させたりするために使用されます。
同様にRubyでは、指定された条件を試すためにif-else文が使われます。
if文
RubyのIf文は、ある文や文のブロックを実行するかどうか、つまり、ある条件が真であれば、その文のブロックを実行し、そうでなければ実行しないと書きたい時に使用されます。
score = 85
if score > 80
puts "合格"
end
# 合格
if-else文
if-else文は、条件が真のときにコードのブロックを実行するために使用され、else文は条件が偽のときにコードのブロックを実行するために使用されます。
if => 条件が真の時実行する処理
else => 条件が偽の時に実行する処理
score = 75
if score > 80
puts "合格"
else
puts "不合格"
end
# 不合格
if-elsif-else文
if-elsif-else文は、複数の条件を用意したい場合に使用します。
if文の条件で真であればif文の処理が実行、elsif文の条件で真であればelsif文の処理が実行、それ以外であればelseの処理が実行されます。
score = 50
if score >= 80
puts "良"
elsif score >= 60 && score <= 79
puts "可"
else
puts "不可"
end
# 不可
三項演算子
三項演算子は、if文を短縮して簡潔に書ける方法で、わかりやすくなるというメリットがあります。
# if文
if 条件
処理1
else
処理2
end
# 三項演算子
条件 ? 処理1 : 処理2
score = 85
result = (score > 80) ? "合格" : "不合格"
puts result
# 合格