Menu
Coddy logo textTech

Añadir el giro

Parte de la sección Fundamentos del Journey de Kotlin de Coddy. Lección 66 de 93.

challenge icon

Desafío

Intermedio

En la lección anterior, hiciste que el límite superior fuera dinámico leyéndolo de la entrada. ¡Ahora añade el giro haciendo que los divisores también sean personalizables!

Modifica tu código para:

  1. Leer tres enteros de la entrada:
    • n - el límite superior
    • fizzDivisor - el divisor de "Fizz"
    • buzzDivisor - el divisor de "Buzz"
  2. Actualizar tu función fizzBuzz para que acepte tres parámetros: el número que se comprobará, el divisor de fizz y el divisor de buzz
  3. Recorrer desde 1 hasta n e imprimir el resultado para cada número usando los divisores personalizados

Firma de función actualizada:

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

Lógica de retorno (igual que antes, pero con divisores personalizados):

  • "FizzBuzz" si es divisible por ambos divisores
  • "Fizz" si solo es divisible por fizzDiv
  • "Buzz" si solo es divisible por buzzDiv
  • El número como cadena en cualquier otro caso

Entrada: Tres enteros en líneas separadas: el límite superior, el divisor de fizz y el divisor de buzz

Salida: El resultado personalizado de FizzBuzz para cada número del 1 a n, cada uno en su propia línea

Restricciones de entrada: Ambos divisores son enteros positivos. La cantidad está entre 1 y 100.

Pruébalo tú mismo

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))
    }
}

Todas las lecciones de Fundamentos

Practica por tu cuenta: Playground de Kotlin