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