next up previous contents
Next: La boucle avec compteur Up: Les structures de contrôle Previous: Instruction IF structuré   Contents

l'instruction SELECT CASE

Une structure de choix multiple avec l'instruction SELECT CASE, assez voisine de la construction IF, pour choisir une option parmi plusieurs. Voici un exemple

 
       SELECT CASE (n)     ! n est un entier
           CASE (0)        ! si n=0, alors on execute  x=x+1
              x=x+1
           CASE (1,2)      ! si n=1 ou 2  alors on execute  x=x+2
              x=x+2
           CASE (3:10)     ! si 3<= n <= 10 alors on execute x=x+10
              x=x+10
           CASE DEFAULT    ! sinon  on execute  x =x+102
              x =x+102
       END SELECT
Evidemment, on peut faire la même chose en utilisant l'instruction IF, mais pour la lisibilité du programme ceci est mieux adapté dans ce cas.

La construction CASE se présente de façon générale :

 
       [nom:] SELECT CASE (expr)
                  CASE (selecteur1)
                     bloc1
                  CASE (selecteur2)
                     bloc2
                  .
                  .
                 [CASE DEFAULT
                    bloc ]
              END SELECT [nom]
L'expression expr doit être de type caractère, logique ou entier et bien sûr sélecteur doit être du même type. Par exemple
 
       SELECT CASE (char)        ! char est de type caractere 
           CASE ('c','d','r')    ! si char = c, d ou r 
              type_ch = .true.
           CASE ('I':'N')        ! si char = I, J, K, L, M ou N 
              type_int = .true.
           CASE DEFAULT    ! sinon  on execute  x =x+102
              typr_reel = .true.
       END SELECT



Mazen Saad 2002-12-12