Diese Aufgaben sind gedacht zur Bearbeitung während der Präsenzübung am Dienstag.
Eine Abgabe der Lösungen ist nicht vorgesehen, aber viermal im Semester muss die eigene Bearbeitung erklärt werden (und zufriedenstellend Verständnis demonstriert werden), damit das Modul abgeschlossen werden kann. Ist diese Voraussetzung erfüllt, so kann ein konkretes Thema für das Abschlussprojekt (Hausarbeit) festgelegt werden.
Aufgabe 1¶
Programmieren Sie mit Python ein CYOA Text-Adventure mit mindestens 7
Szenen (mindestens eine Eingangs-Szene, eine Gewinn-Szene, eine
Verloren-Szene) mit if und elif bzw. wenn Sie möchten match case
Kontrollstrukturen und input für Nutzereingaben.
Aufgabe 2¶
Nutzen Sie eine game-loop mit while damit bei ungültigem Nutzerinput
erneut nach Nutzerinput gefragt wird.
Strukturieren Sie den Code mit Hilfe von Methodendeklarationen mit
def.
Sorgen Sie dafür, dass ein “Keyboard Interrupt” mit einer freundlichen Bemerkung das Programm beendet (anstelle einer Python-Fehlermeldung).
Aufgabe 3¶
Beschreiben Sie eine Erweiterung des Grundspiels und wie Sie diese implementieren könnten, und wieso Sie es auf diese Weise tun würden.
Beispiel: Ein Zufallselement bei dem Wechsel einer Szene zu einer
anderen (etwa, dass von zwei möglichen Optionen A und B die Option A in
50% der Fälle zum Sieg führt, in den anderen Fällen zu einer anderen
Szene), implementiert mit Hilfe von import random.
(Sie können durchaus etwas ausführlicher skizzieren, wie genau das implementiert werden könnte, und wieso so und nicht anders).
Aufgabe 4¶
Implementieren Sie die in der vorherigen Aufgabe beschriebene Erweiterung.
Aufgabe 5¶
Was für Erweiterungen haben die anderen vorgeschlagen? Gibt es Gemeinsamkeiten? Kann man abstrahieren und eine Art von System implementieren, welches gleich mehrere solche Erweiterungen besonders leicht zu implementieren macht?