Entscheidung

Eine Fallunterscheidung bzw. Entscheidungsanweisung dient dazu, alternative Abläufe zu beschreiben.

Auch du triffst jeden Tag Entscheidungen: Regnet es? Falls ja packe ich einen Schirm ein, sonst nicht.

ScratchCat

Regnet es?

Ab hier unterscheidet sich der Rechner von einer schöden Maschine. Mit einer Entscheidung kann der Rechner auf verschiedene Situationen reagieren.

Die folgenden Programme benutzen jeweils eine Fallunterscheidung:

Programm mit zweiseitiger FallunterscheidungProgramm mit einseitiger Fallunterscheidung

Fallunterscheidungen gibt es in zwei Varianten, als zweiseitige und als einseitige Fallunterscheidung. Diese Varianten sollen jetzt genauer betrachtet werden.

Aufbau einer Fallunterscheidung

In der zweiseitigen Version besteht sie aus einer Bedingung und je einer Anweisungsfolge für den falls-Fall bzw. sonst-Fall:

Aufbau einer zweiseitigen Fallunterscheidung

In der einseitigen Version besteht sie aus einer Bedingung und einer Anweisungsfolge für den falls-Fall:

Aufbau einer einseitigen Fallunterscheidung

Komplexe Bedingungen

Bedingungen sind wesentlicher Bestandteil von Fallunterscheidungen. Das folgende Beispiel zeigt, dass Bedingungen - auch bei recht einfachen Problemlösungen - recht komplex werden können.

programm

Die Entscheidungsanweisung benutzt hier eine zusammengesetzte Bedingung. Die beiden elementaren Bedingungen x-Position < 160 und wird [fussgaenger] berührt werden hier mit dem logischen und-Operator sowie dem logischen nicht-Operator verknüpft. Im Folgenden sollen diese logischen Operatoren kurz vorgestellt werden.

Logische Operatoren

Logische Operatoren werden zur Bildung komplexer Bedingungen benötigt. Die folgenden Tabellen zeigen, wie die drei logischen Grundoperatoren festgelegt sind.

Der nicht-Operator beschreibt das logische nicht.

a nicht a
falsch wahr
wahr falsch

Der nicht-Operator kehrt also den Wahrheitswert einer Bedingung um.

Mit dem und-Operator wird eine logisches und beschrieben:

a b a und b
falsch falsch falsch
falsch wahr falsch
wahr falsch falsch
wahr wahr wahr

Eine mit dem und-Operator zusammengesetzte Bedingung ist also nur dann erfüllt, wenn beide Teilbedingungen erfüllt sind - die erste und die zweite.

Mit dem oder-Operator wird eine logisches (nicht-ausschließendes) oder beschrieben:

a b a oder b
falsch falsch falsch
falsch wahr wahr
wahr falsch wahr
wahr wahr wahr

Eine mit dem oder-Operator zusammengesetzte Bedingung ist also dann erfüllt, wenn mindestens eine der beiden Teilbedingungen erfüllt ist - die erste oder die zweite oder beide.