LoginSignup
0
0

More than 3 years have passed since last update.

FizzBuzz問題の備忘録

Posted at

昨日のドリルで登場したFizzBuzz問題。

模範回答としては、

def fizz_buzz
  num = 1
  while num <= 100 do
    if num % 15 == 0
      puts "FizzBuzz"
    elsif num % 3 == 0
      puts "Fizz"
    elsif num % 5 == 0
      puts "Buzz"
    else
      puts num
    end

    num = num + 1
  end
end

fizz_buzz

というのが正解だったけど、
rubocopを使ったところ、

def fizz_buzz
  num = 1
  while num <= 100
    if (num % 15).zero?
      puts 'FizzBuzz'
    elsif (num % 3).zero?
      puts 'Fizz'
    elsif (num % 5).zero?
      puts 'Buzz'
    else
      puts num
    end
    num += 1
  end
end

fizz_buzz

と言う形で、
数式を()で括り「その数値が0か否か」を判断する、
zero?メソッドを使った別の記述が(偶然だけど)できた。

rubocop的にはやはり、
可能な限りスッキリと整頓した記述がいいんだろうな。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0