Menu
Coddy logo textTech

Ajouter la variante

Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 66 sur 93.

challenge icon

Défi

Moyen

Dans la leçon précédente, vous avez rendu la limite supérieure dynamique en la lisant depuis l’entrée. Maintenant, ajoutez la difficulté en rendant également les diviseurs personnalisables !

Modifiez votre code pour :

  1. Lire trois entiers depuis l’entrée :
    • n - la limite supérieure
    • fizzDivisor - le diviseur pour "Fizz"
    • buzzDivisor - le diviseur pour "Buzz"
  2. Mettre à jour votre fonction fizzBuzz afin qu’elle accepte trois paramètres : le nombre à vérifier, le diviseur de fizz et le diviseur de buzz
  3. Parcourir les nombres de 1 à n et afficher le résultat pour chaque nombre en utilisant les diviseurs personnalisés

Signature de fonction mise à jour :

fun fizzBuzz(num: Int, fizzDiv: Int, buzzDiv: Int): String

Logique de retour (identique à la précédente, mais avec des diviseurs personnalisés) :

  • "FizzBuzz" si le nombre est divisible par les deux diviseurs
  • "Fizz" s’il est divisible uniquement par fizzDiv
  • "Buzz" s’il est divisible uniquement par buzzDiv
  • Le nombre sous forme de chaîne de caractères dans les autres cas

Entrée : Trois entiers sur des lignes séparées : la limite supérieure, le diviseur de fizz et le diviseur de buzz

Sortie : Le résultat FizzBuzz personnalisé pour chaque nombre de 1 à n, chacun sur sa propre ligne

Contraintes d’entrée : Les deux diviseurs sont des entiers positifs. Le nombre est compris entre 1 et 100.

Essayez vous-même

fun fizzBuzz(n: Int): String {
    return if (n % 3 == 0 && n % 5 == 0) {
        "FizzBuzz"
    } else if (n % 3 == 0) {
        "Fizz"
    } else if (n % 5 == 0) {
        "Buzz"
    } else {
        n.toString()
    }
}

fun main() {
    val n = readLine()!!.toInt()
    for (i in 1..n) {
        println(fizzBuzz(i))
    }
}

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Kotlin