next up previous contents
Nächste Seite: Schleifen Aufwärts: Verzweigungen Vorherige Seite: Block-IF-Strukturen   Inhalt

CASE-Verzweigung

Die CASE-Verzweigung ist der Block-IF-Verzweigung sehr ähnlich und soll hier insbesondere aus Vollständigkeitsgründen aufgeführt werden. Im Gegensatz zu der Block-IF-Verzweigung wird hier der auszuführende Block nur nach Inhalt einer Varialen bestimmt.

Die Konstruktion der CASE-Verzweigung sieht allgemein aus:

             SELECT CASE (varbl)

                      CASE (selectlist1)    
                             ...

                      CASE (selectlist2)    
                             ...

                      CASE DEFAULT  
                             ...

             END SELECT

varbl ist eine Variable eines beliebigen Datentyps, die bei der Abbarbeitung der CASE-Anweisung ausgewertet werden soll. selectlist ist eine Liste von skalaren Werten gleichen Typs, wie varbl. Stimmt der Inhalt der Variablen varbl mit einem Element der selectlist überein, wird der entsprechende Block - und nur dieser Block - abgearbeitet. selectlist kann wie folgt zusammengesetzt sein:

w1, w2, w3, .. Wert w1 oder Wert w2 oder ...
w1:w2 zwischen Wert w1 und Wert w2
w1: größer als Wert w1
:w2 kleiner als Wert w2

Beispiel:

             CHARACTER (LEN=5) :: Farbe
             SELECT CASE (Farbe)
                CASE ('rot', 'ROT')       ! Farbe ist rot 
    !            .....
                CASE ('gruen', 'GRUEN')   ! Farbe ist gruen 
    !            .....
                CASE ('blau', 'BLAU')     ! Farbe ist blau
    !            .....
                CASE DEFAULT              ! Alle anderen Farben
    !            .....
             END SELECT



Lars Tornow 2003-03-31