Herausforderung: FizzBuzz
Teil des Abschnitts Logik & Ablauf der Dart-Journey von Coddy — Lektion 65 von 65.
Aufgabe
EinfachErstellen Sie ein Programm, das die klassische FizzBuzz-Herausforderung mit der richtigen Schleifenstruktur und bedingten Logik implementiert. Diese Herausforderung testet Ihre Fähigkeit, Schleifen, bedingte Anweisungen und den Modulo-Operator zu kombinieren, um ein bekanntes Programmierproblem zu lösen.
Ihre Aufgabe ist es:
- Verwenden Sie eine
for-Schleife, um die Zahlen von 1 bis 50 (einschließlich) zu durchlaufen - Wenden Sie für jede Zahl die folgenden Regeln in der angegebenen Reihenfolge an:
- Wenn die Zahl sowohl durch 3 als auch durch 5 teilbar ist, geben Sie
FizzBuzzaus - Wenn die Zahl nur durch 3 teilbar ist, geben Sie
Fizzaus - Wenn die Zahl nur durch 5 teilbar ist, geben Sie
Buzzaus - Wenn die Zahl weder durch 3 noch durch 5 teilbar ist, geben Sie die Zahl selbst aus
- Wenn die Zahl sowohl durch 3 als auch durch 5 teilbar ist, geben Sie
- Jede Ausgabe sollte in einer separaten Zeile erfolgen
- Verwenden Sie den Modulo-Operator (
%), um die Teilbarkeit zu prüfen - Strukturieren Sie Ihre bedingten Anweisungen mit
if,else ifundelsein der richtigen Reihenfolge
Die ersten Zeilen Ihrer Ausgabe sollten wie folgt aussehen:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzzDenken Sie daran, dass der Schlüssel zur korrekten Lösung von FizzBuzz darin besteht, zuerst den Fall "beide Bedingungen" (teilbar durch sowohl 3 als auch 5) zu prüfen, bevor die einzelnen Bedingungen geprüft werden. Eine Zahl ist durch eine andere Zahl teilbar, wenn der Rest bei der Division durch diese Zahl Null ergibt.
Ihr Programm sollte die ordnungsgemäße Verwendung von Schleifen zur Iteration, den Modulo-Operator zur Prüfung der Teilbarkeit und bedingte Anweisungen demonstrieren, die in der richtigen logischen Reihenfolge strukturiert sind, um alle möglichen Fälle abzudecken.
Probier es selbst
void main() {
// TODO: Schreibe deinen Code unten
// Verwende eine for-Schleife, um von 1 bis 50 zu iterieren
// Überprüfe die Teilbarkeit mit dem Modulo-Operator (%)
// Denke daran, zuerst auf sowohl 3 ALS AUCH 5 zu prüfen, dann auf die einzelnen Bedingungen
// Gib jedes Ergebnis in einer separaten Zeile aus
}Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Listenmanipulation
Listen-Eigenschaften: first & lastListen-Status: isEmpty & isNotEmptyEine Liste umkehrenHinzufügen zu einer Liste: insertElemente aus Liste entfernen: removeWhereSuchen in einer Liste: indexOfEine Liste sortierenEine Liste mischenZusammenfassung – Listen-Organizer4Fortgeschrittene Map-Manipulation
Über eine Map iterierenPrüfen auf Schlüssel und WerteMap-Eigenschaften: keys & valuesBedingtes Hinzufügen: putIfAbsentEinträge aus einer Map entfernenVerschachtelte MapsRückblick – Inventar-Update7Fortgeschrittene Funktionen
Anonyme FunktionenFunktionen als Argumente übergebenClosures verstehenEinführung in die RekursionRekursive Funktion: CountdownRekursive Funktion: FakultätZusammenfassung – List Processor10Abschluss-Herausforderungen
Herausforderung: NotensortiererHerausforderung: VokalzählerHerausforderung: FizzBuzz2Funktionale Listenoperationen
Transformieren mit 'map'Filtern mit 'where''.toList()' verwendenBedingungen prüfen mit 'any'Bedingungen mit 'every'Suchen mit 'firstWhere'Zusammenfassung – Datenfilterung3Sets
Was ist ein Set?Ein Set erstellenHinzufügen und Entfernen in SetsPrüfen auf Elemente in einem SetEine Liste in ein Set umwandelnSet-VereinigungSet-SchnittmengeSet-DifferenzRückblick – Einzigartige Gästeliste