Menu
Coddy logo textTech

Iterando a través de los números

Parte de la sección Fundamentos del Journey de R de Coddy — lección 54 de 78.

challenge icon

Desafío

Fácil

En la lección anterior, creaste la función fizzbuzz que maneja un solo número. Ahora, agrega un bucle para procesar un rango de números desde 1 hasta un límite dado.

Modifica tu código para:

  1. Leer un número n de la entrada (este será el límite superior)
  2. Usar un bucle for para iterar desde 1 hasta n
  3. Para cada número en el rango, llamar a tu función fizzbuzz e imprimir el resultado

Cada resultado debe imprimirse en una nueva línea usando print().

Por ejemplo, si la entrada es:

5

La salida debería ser:

[1] "1"
[1] "2"
[1] "Fizz"
[1] "4"
[1] "Buzz"

Si la entrada es:

15

La salida debería ser:

[1] "1"
[1] "2"
[1] "Fizz"
[1] "4"
[1] "Buzz"
[1] "Fizz"
[1] "7"
[1] "8"
[1] "Fizz"
[1] "Buzz"
[1] "11"
[1] "Fizz"
[1] "13"
[1] "14"
[1] "FizzBuzz"

Pruébalo tú mismo

# Read input
con <- file("stdin", "r")
number <- as.numeric(suppressWarnings(readLines(con, n = 1)))

# Function from previous lesson
check_divisible <- function(number, divisor) {
  return(number %% divisor == 0)
}

# Create the fizzbuzz function
fizzbuzz <- function(n) {
  if (check_divisible(n, 3) && check_divisible(n, 5)) {
    return("FizzBuzz")
  } else if (check_divisible(n, 3)) {
    return("Fizz")
  } else if (check_divisible(n, 5)) {
    return("Buzz")
  } else {
    return(as.character(n))
  }
}

# Call the fizzbuzz function and print the result
print(fizzbuzz(number))

Todas las lecciones de Fundamentos