Rubyの条件分岐はif文の他にもunlessという方法もあります。
if文は、条件式がtrueの場合に処理が実行され、falseのときはelseの後に記述した処理が実行されます。
if 条件式
条件式がtrueの時に実行する処理
else
条件式がfalseの時に実行する処理
end
unless文は条件式がfalseの場合に処理が実行され、trueのときはelseの後に記述した処理が実行されます。
unless 条件式
条件式がfalseの時に実行する処理
else
条件式がtrueの時に実行する処理
end
例えば、
if a + b > 0
puts "計算結果は0より大きいです"
end
のif文をunless文を使って記述したとすると、
unless a + b <= 0
puts "計算結果は0より大きいです"
end
if文では0が含まれていないので、unless文では0以上とすることで同じような意味になります。