0
Help us understand the problem. What are the problem?

posted at

FizzBuzz

FizzBuzz

FizzBuzzプログラムは、以下のような挙動をするプログラムです。

3で割り切れる数値を引数に渡すと、「Fizz」を返す
5で割り切れる数値を引数に渡すと、「Buzz」を返す
3と5の両方で割り切れる数値を引数に渡すと、「FizzBuzz」を返す
それ以外の数値は、その数値を文字列に変えて返す

def fizz_buzz(number)
  
end

puts "数字を入力してください。"

input = gets.to_i

puts "結果は..."
puts fizz_buzz(input)

メソッドfizz_buzzを定義して、そのなかで条件分岐する計算式を書きます。

FizzBuzzと返すには...

if number%15 ==0

もしくは

if number%3 == 0 && number%5 == 0

でも可能です。
しかし、前者のほうがシンプルなので前者を採用。コードは見やすいほうが良いので。

残りは単純です。

if number%3 == 0

でFizzを返し、

if number%5 == 0

でBuzzを返します。

def fizz_buzz(number)
 if number%15 == 0
  "FizzBuzz"
 elsif number%3 == 0
  "Fizz"
 elsif number%5 == 0
  "Buzz"
 else
   number.to_s
end

まとめるとこうなります。

処理構造自体はシンプルなものですが、このコードを書くにあたっては、論理的思考ができるかどうかがカギとなってきます。
FizzBuzzプログラムはプログラマーの技術力をはかるために、コーディング面接の題材としてよく使われています。
これを基礎として、論理的思考を養いましょう。

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
0
Help us understand the problem. What are the problem?