Menu
Coddy logo textTech

Die Wendung hinzufügen

Teil des Abschnitts Grundlagen der Swift-Journey von Coddy. Lektion 61 von 86.

challenge icon

Aufgabe

Einfach

In der vorherigen Lektion hast du eine Schleife erstellt, die FizzBuzz von 1 bis zu einem angegebenen Limit mit den festen Teilern 3 und 5 ausführt. Jetzt kommt die Erweiterung: Mache die Teiler anpassbar!

Ändere deine fizzBuzz-Funktion so, dass sie zwei zusätzliche Parameter für die benutzerdefinierten Teiler akzeptiert:

  • Aktualisiere die Funktionssignatur zu: fizzBuzz(_ number: Int, fizzAt: Int = 3, buzzAt: Int = 5) -> String
  • Verwende fizzAt anstelle von 3 für die Prüfung auf „Fizz“
  • Verwende buzzAt anstelle von 5 für die Prüfung auf „Buzz“
  • Die Standardwerte stellen sicher, dass das klassische FizzBuzz weiterhin funktioniert, wenn keine Teiler angegeben werden

Du erhältst die folgenden Eingaben:

  1. Das obere Limit (Ganzzahl)
  2. Der erste Teiler für „Fizz“ (Ganzzahl)
  3. Der zweite Teiler für „Buzz“ (Ganzzahl)

Aktualisiere deine Schleife so, dass sie diese benutzerdefinierten Teiler für jede Zahl an die Funktion übergibt.

Wenn die Eingaben beispielsweise 10, 2 und 3 lauten, sollte die Ausgabe wie folgt aussehen:

1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizz

In diesem Beispiel wird „Fizz“ für Vielfache von 2 ausgegeben, „Buzz“ für Vielfache von 3 und „FizzBuzz“ für Vielfache von beiden (wie 6).

Wenn die Eingaben 15, 3 und 5 lauten (die klassischen Teiler), sollte die Ausgabe dem ursprünglichen FizzBuzz entsprechen:

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

Probier es selbst

func fizzBuzz(_ number: Int) -> String {
    if number % 3 == 0 && number % 5 == 0 {
        return "FizzBuzz"
    } else if number % 3 == 0 {
        return "Fizz"
    } else if number % 5 == 0 {
        return "Buzz"
    } else {
        return String(number)
    }
}

// Read input
let limit = Int(readLine()!)!

// Loop from 1 to limit and print the result for each number
for number in 1...limit {
    print(fizzBuzz(number))
}

Alle Lektionen in Grundlagen

Übe selbstständig: Swift-Playground