MATLAB - La déclaration switch

Un bloc de commutation exécute conditionnellement un ensemble d'instructions à partir de plusieurs choix. Chaque choix est couvert par une déclaration de cas.

Une expression switch_expression évaluée est un scalaire ou une chaîne.

Une expression case_évaluée est un scalaire, une chaîne ou un tableau de cellules de scalaires ou de chaînes.

Le bloc de commutation teste chaque cas jusqu'à ce que l'un des cas soit vrai. Un cas est vrai quand -

  • Pour les chiffres, eq(case_expression,switch_expression).

  • Pour les cordes, strcmp(case_expression,switch_expression).

  • Pour les objets prenant en charge eq(case_expression,switch_expression).

  • Pour un tableau de cellules case_expression, au moins un des éléments du tableau de cellules correspond à switch_expression, comme défini ci-dessus pour les nombres, les chaînes et les objets.

Lorsqu'un cas est vrai, MATLAB exécute les instructions correspondantes puis quitte le bloc de commutation.

le otherwise block est facultatif et ne s'exécute que lorsqu'aucune casse n'est vraie.

Syntaxe

La syntaxe de l'instruction switch dans MATLAB est -

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

Exemple

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

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

Lorsque vous exécutez le fichier, il affiche -

Well done