数値のループ処理
CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 56/88。
チャレンジ
簡単前回のレッスンでは、単一の数値を処理する fizzbuzz メソッドを作成しました。今回は、1から指定された上限までの範囲の数値を処理するためのループを追加しましょう。
コードを次のように修正してください:
- 入力から数値
nを読み取ります(これが上限になります) - ループを使用して1から
nまで繰り返します - 範囲内の各数値について、
fizzbuzzメソッドを呼び出し、その結果を出力します
各結果は puts を使用して新しい行に出力する必要があります。
例えば、入力が次の場合:
5出力は次のようになります:
1
2
Fizz
4
Buzz入力が次の場合:
15出力は次のようになります:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz自分で試してみよう
# Read input
number = gets.chomp.to_i
# Method from previous lesson
def check_divisible(number, divisor)
return number % divisor == 0
end
# Create the fizzbuzz method
def fizzbuzz(n)
if check_divisible(n, 3) && check_divisible(n, 5)
return "FizzBuzz"
elsif check_divisible(n, 3)
return "Fizz"
elsif check_divisible(n, 5)
return "Buzz"
else
return n.to_s
end
end
# Call the fizzbuzz method and print the result
puts fizzbuzz(number)