MATLAB - La declaración de cambio

Un bloque de interruptores ejecuta condicionalmente un conjunto de declaraciones de varias opciones. Cada elección está cubierta por una declaración de caso.

Un switch_expression evaluado es un escalar o una cadena.

Una case_expression evaluada es un escalar, una cadena o una matriz de celdas de escalares o cadenas.

El bloque de interruptores prueba cada caso hasta que uno de los casos es verdadero. Un caso es cierto cuando ...

  • Para números, eq(case_expression,switch_expression).

  • Para cuerdas, strcmp(case_expression,switch_expression).

  • Para objetos que soportan el eq(case_expression,switch_expression).

  • Para una matriz de celdas case_expression, al menos uno de los elementos de la matriz de celdas coincide con switch_expression, como se definió anteriormente para números, cadenas y objetos.

Cuando un caso es verdadero, MATLAB ejecuta las declaraciones correspondientes y luego sale del bloque de conmutación.

los otherwise block es opcional y se ejecuta solo cuando ningún caso es verdadero.

Sintaxis

La sintaxis de la instrucción switch en MATLAB es:

switch <switch_expression>
   case <case_expression>
      <statements>
   case <case_expression>
      <statements>
      ...
      ...
   otherwise
      <statements>
end

Ejemplo

Cree un archivo de script y escriba el siguiente código en él:

grade = 'B';
   switch(grade)
   case 'A' 
      fprintf('Excellent!\n' );
   case 'B' 
      fprintf('Well done\n' );
   case 'C' 
      fprintf('Well done\n' );
   case 'D'
      fprintf('You passed\n' );
   case 'F' 
      fprintf('Better try again\n' );
   otherwise
      fprintf('Invalid grade\n' );
   end

Cuando ejecuta el archivo, muestra:

Well done