LoginSignup
0
0

More than 3 years have passed since last update.

FizzBuzzプログラム(2種類)

Posted at

要件1

・正の整数(自然数)の入力を求める。
・与えられた数字が15の倍数の場合は、"FizzBuzz"と出力
・3の倍数の場合は、"Fizz"と出力
・5の倍数の場合は、"Buzz"と出力
・それ以外の倍は、そのまま数字を出力

コード例

num = gets.to_i

def fizzbuzz(num)
  if num % 15 == 0
    puts "FizzBuzz"
  elsif num % 3 == 0
    puts "Fizz"
  elsif num % 5 == 0
    puts "Buzz"
  else
    puts num
  end
end

fizzbuzz(num)

要件2(さきほどのコードの改良版)

・自然数の入力を求める。
・1からその数まで、"Fizz","Buzz","FizzBuzz","数字"のいずれかを出力する。
例)入力値が9 → 1,2,Fizz,4,Buzz,Fizz,7,8,Fizz
・0や文字列を与えられた場合は、再度入力を求めることができる。

コード例

puts "0以外の数字を入力してください"

input_number = gets.to_i
num = 1

def fizzbuzz(input_number,num)
  input_number.times do
      if num % 15 == 0
        puts "FizzBuzz"
      elsif num % 3 == 0
        puts "Fizz"
      elsif num % 5 == 0
        puts "Buzz"
      else
        puts num
      end
        num += 1
  end

  if input_number == 0
      puts "0または文字列が入力されました。もう一度入力してください。"
      input_number = gets.to_i
      fizzbuzz(input_number,num)
  end

end

fizzbuzz(input_number,num)
0
0
0

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