MATLAB - Les instructions de commutateur imbriqué

Il est possible d'avoir un commutateur dans le cadre de la séquence d'instructions d'un commutateur externe. Même si les constantes de cas du commutateur interne et externe contiennent des valeurs communes, aucun conflit ne surviendra.

Syntaxe

La syntaxe d'une instruction de commutateur imbriquée est la suivante -

switch(ch1) 
   case 'A' 
      fprintf('This A is part of outer switch');
      switch(ch2) 
         case 'A'
         fprintf('This A is part of inner switch' );
         
         case 'B'  
         fprintf('This B is part of inner switch' );
      end   
   case 'B'
      fprintf('This B is part of outer switch' );
end

Exemple

Créez un fichier de script et tapez le code suivant -

a = 100;
b = 200;
switch(a) 
   case 100 
      fprintf('This is part of outer switch %d\n', a );
      switch(b) 
         case 200
            fprintf('This is part of inner switch %d\n', a );
      end
end

fprintf('Exact value of a is : %d\n', a );
fprintf('Exact value of b is : %d\n', b );

Lorsque vous exécutez le fichier, il affiche -

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