加入新变化
本课属于 Coddy Ruby 学习旅程的“基础知识”单元。第 57 课,共 88 课。
挑战
简单在上一课中,你创建了一个 FizzBuzz 程序,使用默认除数 3 和 5 遍历数字。现在,通过默认参数让除数可以自定义,为程序增添一点变化。
修改你的 fizzbuzz 方法,使其接受三个参数:
n- 要检查的数字(必需)fizz_divisor- 用于判断是否输出 "Fizz" 的除数(可选,默认值为3)buzz_divisor- 用于判断是否输出 "Buzz" 的除数(可选,默认值为5)
检查能否整除时,方法应使用这些自定义除数,而不是硬编码的值。
你会收到三行输入:
- 上限
n - Fizz 除数
- Buzz 除数
从 1 遍历到 n,并使用全部三个参数调用更新后的 fizzbuzz 方法。打印每个结果。
例如,如果输入是:
10
2
3输出应为:
1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizz如果输入是:
15
3
5输出应为:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz亲手试试
# Read input
n = 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
# Loop through numbers from 1 to n and print the result
(1..n).each do |i|
puts fizzbuzz(i)
end基础知识中的所有课
自己练习: Ruby 在线编译器