if文を使った条件分岐
以下の条件を満たすようプログラムを作成する。
- 条件1:第一引数のnumが1以上かつ10以下の範囲であればTrueを出力すること
- 条件2:第二引数のoutside_modeがTrueの場合は、第一引数numが条件範囲外でもTrueを出力すること
- 条件3:それ以外はFalseを出力すること
def in1to10(num, outside_mode)
if (num >= 1 && num <= 10) || outside_mode
puts "True"
else
puts "False"
end
end
# 呼び出し例
in1to10(5,false)
in1to10(11,false)
in1to10(11,true)
True
False
True
# ターミナル出力
複数の条件がある場合は、論理演算子を使って記述を行います。
論理演算子とは
「真(true)」と「偽(false)」の確認を行う時に使われる演算子(記号)をのこと。
複数の条件式を組み合わせて条件式を記述するときは、論理演算子&&や||を使います。
例
# aもbもtrueの場合にtrue
a && b
# aかbのどちらかがtrueの場合にtrue
a || b
このプログラムの解説
この解説では、呼び出し例がin1to10(5,false)のときを例に進めていきたいと思います。
if (num >= 1 && num <= 10) || outside_mode
上記条件式では、Trueを返すときの条件を記述しています。
Trueを返すときの条件
= numが1以上かつ10以下の範囲であること
= outside_modeがTrueの場合は、第一引数numが条件範囲外でもTrueを出力すること
呼び出し例では、1以上かつ10以下であり、falseなので、出力結果はTrueとなります。