schule:fizzbuzz_katas
FizzBuzz Katas
Bei dem FizzBuzz-Spiel werden die Zahlen von 1 bis 100 durchlaufen. Nun können folgende Fälle eintreten:
- Wenn die Zahl durch 3 teilbar ist, wird „Fizz“ ausgegeben
- wenn sie durch 5 teilbar ist, wird „Buzz“ ausgegeben und
- wenn sie durch 3 und 5 teilbar ist, wird „FizzBuzz“ ausgegeben.
- Tritt keiner dieser Fälle ein, wird die Zahl ausgegeben.
Ob eine Zahl durch eine andere Zahl teilbar ist, kann mit Hilfe des Modulo-Operators (oder Restwert-Operator) %
herausgefunden werden. Er berechnet den Divisionsrest: 10 % 3
ist 1, da 10 geteilt durch 3 genau 3 Rest 1 ergibt.
Die ersten 20 Ausgaben sehen wir folgt aus:
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz
Versuche das Problem nun auf unterschiedliche Arten in den folgenden Katas (Übungen) zu lösen:
- auf Papier
- mit einer Methode
- ohne Verwendung einer Schleife (rekursiv)
- mit Hilfe von nebenläufigen Threads
- mit einer anderen IDE
- in einer anderen Programmiersprache
- als Client-Server Anwendung
- mit einer grafischen Oberfläche (GUI)
- Objekt-Orientiert: Klassen und Objekte verwenden
- objekt-orientiert mit Vererbung
- funktional mit map, reduce und lambda-Ausdrücken
- als Webanwendung (mit bottle)
- in git-repo einchecken
- als installierbares Programm
- als getestetes Programm (mit unittest und doctests)
- mit einem EA-Modul ansteuern
- mit Anbindung an eine Datenbank
- mit Dokumentation
- als Chatbot (z.B. mit sopel https://sopel.chat/)
- auf einem Cluster (mit GNU parallel)
- in einem UML-Aktivitätsdiagramm
- in einem UML-Sequenzdiagramm
- in einem UML-Klassendiagramm
- Als IOT-Anwendung mit einem Message-Broker (MQTT)
- Mit Kommandozeilenparametern
- Mit einer Konfigurationsdatei
- Als Web-Service mit REST-API
- In einer MVC-Architektur
- Als Spiel (mit pygame)
- In einem docker Container
- Mit Fehlerbehandlung
- Mit einem neuronalen Netzwerk
- Mit logging in ein logfile
- Mit einem Profiler
- Mit einer geplotteten Visualisierung
Mögliche Lösungen für die Katas befinden sich hier oder hier. Auf dem Flagserver gibt es auch eine Übung FizzBuzz
schule/fizzbuzz_katas.txt · Zuletzt geändert: 2021-04-17 12:22 von pintman