Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.1.0 - Français


select

Mot-clé utilisé dans une structure select-case-else

Séquence d'appel

select variable
case valeur1 then
    instructions 1
case valeur2 then
    instructions 2
    ...
case valeurn then
    instructions n
[else
     instructions]
end

Paramètres

variable

variable dont la valeur doit être comparée.

valeur1, ..., valeurn

Valeurs de variablepour lesquelles il existe un bloc d'instruction associé instructions 1, ..., instructions n.

instructions

Bloc d'instructions valides.

Description

Mot-clé utilisé dans une structure select ... case, à utiliser de la façon suivante :

Notes :

  • La seule contrainte est que chaque mot-clé then soit sur la même ligne que le case correspondant.

  • Le mot-clé then peut être remplacé par un passage à la ligne ou une virgule. Les instructions1 sont exécutées si expr1=expr, etc.

En accord avec les conventions de codage pour le langage de programmation Scilab, il est recommandé de :

  • Commencer chaque instruction sur une nouvelle ligne.

  • Ne pas écrire plus d'une instruction simple par ligne.

  • Séparer les instructions composées sur plusieurs lignes.

Par exemple, utiliser :

A = 2
select A
case 1 then
    disp(1)
case 2 then
    disp(2)
else
    disp(3)
end

plutôt que

A = 2;select A case 1 then disp(1); case 2 then disp(2); else  disp(3); end

Attention : le nombre de caractères constituant le corps d'une instruction conditionnelle (if while for ou select/case) est limité à 16k.

Exemples

while %t do
  n=round(10*rand(1,1))
  select n
  case 0 then
    disp(0)
  case 1 then
    disp(1)
  else
    break
  end
end

Voir aussi

  • if — Mot-clé utilisé pour une exécution conditionnelle
  • while — mot-clé utilisé dans une structure while ... end
  • for — Ouverture d'une boucle itérative non conditionnelle

Historique

VersionDescription
6.0.0 select est maintenant protégé. Les affectations telles que select=1 ne sont plus possibles.
Report an issue
<< return Structure de contrôle then >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon May 22 12:39:40 CEST 2023