Fortran - Construction de cas de sélection imbriquée

Vous pouvez en utiliser un select case déclaration dans un autre select case déclaration (s).

Syntaxe

select case(a) 

   case (100) 
      print*, "This is part of outer switch", a 

   select case(b) 
      case (200)
         print*, "This is part of inner switch", a 

   end select
      
end select

Exemple

program nestedSelectCase
   ! local variable definition 
   integer :: a = 100
   integer :: b = 200
 
   select case(a) 
      case (100) 
         print*, "This is part of outer switch", a 
         
      select case(b) 
         case (200)
            print*, "This is part of inner switch", a 
      end select
      
   end select
   
   print*, "Exact value of a is : ", a 
   print*, "Exact value of b is : ", b 
 
end program nestedSelectCase

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

This is part of outer switch 100
This is part of inner switch 100
Exact value of a is : 100
Exact value of b is : 200