Menu
Coddy logo textTech

Zahlen in einer Schleife durchlaufen

Teil des Abschnitts Grundlagen der R-Journey von Coddy — Lektion 54 von 78.

challenge icon

Aufgabe

Einfach

In der vorherigen Lektion haben Sie die fizzbuzz-Funktion erstellt, die eine einzelne Zahl verarbeitet. Fügen Sie nun eine Schleife hinzu, um einen Bereich von Zahlen von 1 bis zu einem bestimmten Limit zu verarbeiten.

Ändern Sie Ihren Code wie folgt:

  1. Lesen Sie eine Zahl n aus der Eingabe (dies ist die Obergrenze)
  2. Verwenden Sie eine for-Schleife, um von 1 bis n zu iterieren
  3. Rufen Sie für jede Zahl im Bereich Ihre fizzbuzz-Funktion auf und geben Sie das Ergebnis aus

Jedes Ergebnis sollte mit print() in einer neuen Zeile ausgegeben werden.

Wenn die Eingabe zum Beispiel wie folgt lautet:

5

Sollte die Ausgabe wie folgt aussehen:

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

Wenn die Eingabe wie folgt lautet:

15

Sollte die Ausgabe wie folgt aussehen:

[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"

Probier es selbst

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

Alle Lektionen in Grundlagen