Die Mehrfachauswahl

Beispiel: 

Zu Weihnachten erstellst du einen digitalen Wunschzettel


Deine Geschwister, Tanten, Opas tragen ein, wie viel Geld sie ausgeben wollen und erhalten einen Tipp für das passende Geschenk; weil du vier Wünsche hast, können sie zwischen vier Dingen auswählen - im Programm benötigt man dazu die Mehrfachauswahl die du allgemein und für das Beispiel in Struktogrammform siehst. Natürlich kannst du auch mehr oder weniger Fälle angeben - der Datenbereich der Werte muss aber INTEGER oder CHAR sein!
Bei den Fällen kannst du einzelne Zahlen angeben (z.B. "0"), mehrere Zahlen durch Komma getrennt (z.B. "1,2,4,6") oder Intervalle, gekennzeichnet durch zwei Zwischenpunkte (z.B. "1..17")

Übersetzt in Oberon - 2

CASE preis OF
   0..10: Display. WriteStr ("Fischstäbchen")
   |11..50: Display. WriteStr ("CD von Helmut Lotti")
   |51..100: Display. WriteStr ("Mathebücher")
   ELSE Display. WriteStr ("Weltfrieden");
END;

Aufgabe:

Entwickle einen eigenen Weihnachtswunschzettel mit Mehrfachauswahl in Oberon-2!
Musterlösung

Weitere Beispiele: 

1. Taschenrechner 
Ein kleiner Taschenrechner soll nach Eingabe von zwei Zahlen zahl1 und zahl 2 die Wahl zwischen den vier Grundrechenarten (+,-,*,/) geben. Dieses Zeichen ist vom Typ CHAR. Schreibe ein Programm, das dieses Problem mit Mehrfachauswahl löst!
Musterlösung 

2. Monate
Schreibe ein Programm, das ausgehend vom eingegebenen Monat (als Nummer!) angibt, wie viele Tage dieser Monat hat. Die Mehrfachauswahl soll dabei nur aus drei Fällen bestehen.
Musterlösung
Zusätzliche Erschwernis durch Profis: Abhängig von der Jahreszahl soll noch ermittelt werden, ob der Februar 28 oder 29 Tage hat!