if else問題

正の整数を入力します。その整数が、10の倍数(10,20,30...)からの差が2以内であるときはTrue、それ以外はFalseと出力するメソッドを作る。という問題について。 まずはメソッドを定義する。

 def near_ten(num)
 end

そのメソッドの中で10の倍数を変数に代入する。つまりnum%10を代入する。

 quotient = num % 10

次に条件分岐で変数quotientが10±2以内ならTrueを返し、それ以外ならfalseを返す条件式を定義する。

 if  quotient <= 2 || quotient >= 8 #quotientが2以内もしくは8以上ならばtrue
 puts "True"
else
 puts "False"
end

これで渡した値が10の倍数からの差が2以内ならばtrueを返し、それ以外であればfalseを返すメソッドを定義出来た。フルで書くとこんな感じ。

def near_ten(num)
  quotient = num % 10
 if quotient <= 2 || quotient >= 8
  puts "True"
 else
  puts "False"
 end
end

初見で見たら複雑なことだと思い間違えてしまったが、蓋を開けてみると単純でした。 もっと柔軟に考えれるようになりたい…