Auswahl (Verzweigungen)


Die Sequenz    Die Auswahl    Die Wiederholung


Sie sagt: "Wenn Du heute zu spät kommst, dann brauchst Du Dich bei mir gar nicht mehr sehen lassen."
Er denkt: "Wenn ich sie los werden will, dann gehe ich erst gar nicht los. Liegt mir was an ihr, dann mache ich mich lieber etwas eher auf den Weg."

Wie im Leben, so auch beim Programmieren kann es vorkommen, dass ein Programm in Abhängigkeit von bestimmten Bedingungen unterschiedlich reagiert.

einseitige Auswahl

Kara Auswahl In Abhängigkeit vom Eintreten einer Bedingung soll etwas ausgeführt werden. Beispielsweise soll Kara von seinem Feld ein Blatt aufnehmen. Das geht natürlich nur dann, wenn eins vorhanden ist.


Struktogramm

einseitige Auswahl
/*
  Umsetzung der einseitigen
  Auswahl in Java
*/

   if (Bedingung){
       Anweisungen;
   }
   
/*
  Umsetzung der einseitigen
  Auswahl in Kara
*/

   if (kara.onLeaf()){
       kara.removeLeaf();
   }
  

zweiseitige Auswahl

Tritt eine Bedingung ein, so soll das Programm etwas ausführen. Tritt diese Bedingung nicht ein, so soll etwas anderes getan werden.
Beispielweise soll Kara ein Blatt aufehmen, falls er eins findet. Andernfalls soll er einen Schritt gehen.
Schlussfolgerung: Es kann nicht passieren, dass beide Anweisungsblöcke ausgeführt werden. Entweder Anweisungsblock 1 oder Anweisungsblock 2 wird ausgeführt.

Struktogramm

zweiseitige Auswahl
/*
Umsetzung der zweiseitigen
Auswahl in Java
*/

    if (Bedingung){
        Anweisungen 1;
     }
     else {
        Anweisungen 2;
     }
  
/*
Umsetzung der zweiseitigen
Auswahl in Kara
*/

    if (kara.onLeaf()){
        kara.removeLeaf();
     }
     else {
        kara.move();
     }
  

Mehrfachauswahl

Eine Steigerung der zweiseitigen Auswahl ist die Mehrfachauswahl. Sie wird dort eingesetzt, wo nicht nur zwischen zwei Fällen unterschieden wird. Das ist Beispielsweise bei einem Menü der Fall, wo das Programm entsprechend der Wahl durch einen Benutzer unterschiedliche Anweisungen ausführen muss.

Struktogramm

/*
  Umsetzung der
  Mehrfachauswahl
  in Java */

   switch (Auswahl) {

       case Fall1 : Anweisung1     ;break;
       case Fall2 : Anweisung2     ;break;
       ...
       case Falln : Anweisungn     ;break;
       default    : sonstAnweisung ;break;

   }
      

Merke

Die Bedingung bei einseitiger und zweisseitiger Auswahl muss einen Wahrheitswert (true oder false) liefern.
Bei der Mehrfachauswahl muss das Auswahlkriterium ein aufzählbarer (integraler) Typ sein (z.B. eine ganze Zahl).

zurück zur Informatikhauptseite