Geschachtelte Fallunterscheidungen
Eine kompliziertere Preisgestaltung betrachten
Die Gestaltung der Eintrittspreise wird weiter verfeinert.
Eintrittspreise: Grundpreis (bis 3 Stunden): Kinder unter 10 : 0 € Jugendliche von 10 bis 18 : 3 € Erwachsene über 18 : 5 € Zuzahlung (ab 3 Stunden): Jede weitere angefangene Stunde kostet für Jugendliche und Erwachsene 1 €.
Wir betrachten zunächst nur die Berechnung des Grundpreises.
Aufgabe 1
Die Funktion zur Implementierung des Grundpreises enthält noch Lücken. Ergänze die Funktionsdefinition und teste sie in der REPL - und zwar so, dass alle möglichen Fälle abgedeckt sind.
Geänderte Darstellung
Die Darstellung der Funktionsdefinition lässt sich folgendermaßen abändern.
Variante 1
Variante 2
Variante 3
Aufgabe 2
Teste auch diese Varianten der Darstellung. Vergleiche und bewerte die Varianten.
Fertige Implementierung
Die Implementierung des neuen Preismodells ist noch nicht fertig. Es fehlen noch die Funktionen zur Berechnung der Zuzahlung und des gesamten Eintrittspreises.
Aufgabe 3
Die Implementierung lässt sich mit einzelnen Funktion - wie oben dargestellt - oder mit Hilfe eines let-Ausdrucks in einer einzigen Funktion umsetzen. Entscheide dich begründet für eine Variante und programmiere die Preisberechnung fertig. Teste deine Implementierung.