Rubyの条件分岐は、特定の条件に基づいてコードの実行フローを制御するために使用されます。条件分岐には、主にif
、elsif
、else
、unless
、およびcase
が使用されます。以下に、それぞれの使い方と例を示します。
if
文
if
文は、条件が真 (true
) の場合にコードを実行します。
構文
if 条件
# 条件が真の場合に実行されるコード
end
例
age = 18
if age >= 18
puts "You are an adult."
end
if-else
文
if-else
文は、条件が真の場合と偽 (false
) の場合に異なるコードを実行します。
構文
if 条件
# 条件が真の場合に実行されるコード
else
# 条件が偽の場合に実行されるコード
end
例
age = 17
if age >= 18
puts "You are an adult."
else
puts "You are a minor."
end
if-elsif-else
文
if-elsif-else
文は、複数の条件を順に評価し、最初に真となる条件のコードを実行します。
構文
if 条件1
# 条件1が真の場合に実行されるコード
elsif 条件2
# 条件2が真の場合に実行されるコード
else
# すべての条件が偽の場合に実行されるコード
end
例
score = 85
if score >= 90
puts "Grade: A"
elsif score >= 80
puts "Grade: B"
elsif score >= 70
puts "Grade: C"
else
puts "Grade: F"
end
unless
文
unless
文は、条件が偽の場合にコードを実行します。if
文の逆の動作をします。
構文
unless 条件
# 条件が偽の場合に実行されるコード
end
例
number = -5
unless number > 0
puts "The number is negative or zero."
end
else
を使った条件分岐
unless
文でもelse
を使って、条件が真の場合に実行されるコードを指定できます。
構文
unless 条件
# 条件が偽の場合に実行されるコード
else
# 条件が真の場合に実行されるコード
end
例
number = -5
unless number > 0
puts "The number is negative or zero."
else
puts "The number is positive."
end
case
文
case
文は、特定の値に基づいて複数の条件を評価し、マッチする条件のコードを実行します。
構文
case 値
when 値1
# 値が値1と一致する場合に実行されるコード
when 値2
# 値が値2と一致する場合に実行されるコード
else
# 値がいずれの値とも一致しない場合に実行されるコード
end
例
grade = 'B'
case grade
when 'A'
puts "Excellent!"
when 'B', 'C'
puts "Well done!"
when 'D'
puts "You passed."
else
puts "Better try again."
end
条件式と論理演算子
条件式には、論理演算子や比較演算子を使用できます。
- 比較演算子:
==
等しい!=
等しくない<
より小さい>
より大きい<=
以下>=
以上
- 論理演算子:
&&
AND||
OR!
NOT
例
age = 20
if age >= 18 && age <= 25
puts "You are eligible for the youth program."
else
puts "You are not eligible for the youth program."
end
まとめ
Rubyの条件分岐を使用することで、プログラムの実行フローを制御し、異なる条件に基づいて適切な処理を実行することができます。
if
文、unless
文、case
文を適切に使い分けることで、より柔軟で読みやすいコードを書くことができます。
スポンサーリンク