MATLAB - As instruções do switch aninhado

É possível ter um switch como parte da sequência de instruções de um switch externo. Mesmo que as constantes case do switch interno e externo contenham valores comuns, nenhum conflito surgirá.

Sintaxe

A sintaxe para uma instrução switch aninhada é a seguinte -

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

Exemplo

Crie um arquivo de script e digite o seguinte código nele -

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 );

Quando você executa o arquivo, ele exibe -

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