Die Fallunterscheidung oder auch switch-Anweisung ist eine spezielle Form der Verzweigung. Sie wird eingesetzt wenn eine Variable auf Gleichheit mit unterschiedlichen Werten getestet wird.
Das ist zumeist dann der Fall, wenn in einem Programm anhand eines Menüs eine Auswahl getroffen werden soll.
Hinweis: In Abhängigkeit der Programmiersprache kann es Einschränkungen bezüglich des Datentyps der Variablen geben. Für C/C++ gilt: nur int und char erlaubt.
Nachdem der Nutzer den Radius eines Kreises eingegeben hat, wählt er zwischen Umfang und Flächeninhalt. Das Programm gibt den gewünschten Wert aus.
Nun haben wir in dieser Lektion zwei Möglichkeiten kennengelernt, um in einem Programm eine alternative Programmausführung zu erreichen:
Stellt sich nun die Frage: wann verwendet man was?
Die einfache Verzweigung oder auch if-Bedingung kann immer dann verwendet werden, wenn in einem Programm abhängig von einem Vergleich eine oder mehrere Anweisungen ausgeführt werden sollen oder auch nicht.
Dabei ist es völlig egal, wie der Vergleich formuliert wird: ob zwei Werte identisch sein müssen oder aber der eine kleine oder größer als er andere ..
Die Fallunterscheidung hingegen kann nur dann eingesetzt werden, wenn ein Vergleich auf Gleichheit vorgenommen wird. Damit ist die Fallunterscheidung eine Spezialisierung der if-Bedingung.
Lieschen Müller möchte einkaufen gehen. Sie braucht das weiße Gold. Wenn sie eine Packung kauft, dann zahlt sie 5 EUR. Kauft sie zwei Packungen, dann erhöht sich der Preis für die zweite Packung auf 7 EUR. Kauft sie drei Packungen, dann kosten die zweite und dritte Packung jeweils 10 EUR. Mehr als drei Packungen darf sie nicht kaufen.
Lieschen Müller hat Hunger und geht einkaufen. Heute auf dem Speiseplan: Nudeln. Die erste Packung kostet 3 EUR. Bei einer Menge bis 4 Packungen kostet jede 6 EUR. Bei einer Abnahmemenge mehr als 4 Packungen zahlt sie 8 EUR pro Paket.