Menu
Coddy logo textTech

Ajouter la variante

Fait partie de la section Fondamentaux du Journey Ruby de Coddy — leçon 57 sur 88.

challenge icon

Défi

Facile

Dans la leçon précédente, vous avez créé un programme FizzBuzz qui parcourt les nombres en utilisant les diviseurs par défaut 3 et 5. Maintenant, ajoutez une variante en rendant les diviseurs personnalisables grâce aux paramètres par défaut.

Modifiez votre méthode fizzbuzz pour qu'elle accepte trois arguments :

  • n - le nombre à vérifier (obligatoire)
  • fizz_divisor - le diviseur pour "Fizz" (optionnel, par défaut 3)
  • buzz_divisor - le diviseur pour "Buzz" (optionnel, par défaut 5)

La méthode doit utiliser ces diviseurs personnalisés au lieu de valeurs codées en dur lors de la vérification de la divisibilité.

Vous recevrez trois lignes d'entrée :

  1. La limite supérieure n
  2. Le diviseur fizz
  3. Le diviseur buzz

Bouclez de 1 à n et appelez votre méthode fizzbuzz mise à jour avec les trois arguments. Affichez chaque résultat.

Par exemple, si les entrées sont :

10
2
3

La sortie devrait être :

1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizz

Si les entrées sont :

15
3
5

La sortie devrait être :

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

Essayez vous-même

# 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

Toutes les leçons de Fondamentaux