Menu
Coddy logo textTech

Farklılığı Ekleme

Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası — ders 57 / 88.

challenge icon

Görev

Kolay

Önceki derste, varsayılan bölenler olan 3 ve 5'i kullanarak sayılar arasında döngü kuran bir FizzBuzz programı oluşturdunuz. Şimdi, bölenleri varsayılan parametreler aracılığıyla özelleştirilebilir hale getirerek bir yenilik ekleyin.

fizzbuzz metodunuzu üç argüman kabul edecek şekilde değiştirin:

  • n - kontrol edilecek sayı (zorunlu)
  • fizz_divisor - "Fizz" için bölen (isteğe bağlı, varsayılan olarak 3)
  • buzz_divisor - "Buzz" için bölen (isteğe bağlı, varsayılan olarak 5)

Metot, bölünebilirliği kontrol ederken sabit değerler yerine bu özel bölenleri kullanmalıdır.

Üç satırlık girdi alacaksınız:

  1. Üst sınır n
  2. Fizz böleni
  3. Buzz böleni

1'den n'e kadar döngü kurun ve güncellenmiş fizzbuzz metodunuzu her üç argümanla birlikte çağırın. Her sonucu yazdırın.

Örneğin, girdiler şunlarsa:

10
2
3

Çıktı şöyle olmalıdır:

1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizz

Girdiler şunlarsa:

15
3
5

Çıktı şöyle olmalıdır:

1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz

Kendin dene

# 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

Temeller bölümündeki tüm dersler