Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - Русский


select

ключевое слово выбора

Синтаксис

select variable
case value1 then
    instructions 1
case value2 then
    instructions 2
    ...
case valuen then
    instructions n
[else
    instructions]
end

Аргументы

variable

переменная, значение которой анализируется.

value1, ..., valuen

значения переменной variable для которых предусмотрен соответствующий набор инструкций instructions 1, ..., instructions n.

instructions

набор корректных инструкций.

Описание

Управляющая инструкция выбора действий по значению переменной variable.

Примечания:

  • Единственное ограничение в том, что каждое ключевое слово "then" должно быть на той же строке, что и соответствующее ключевое слово "case" (либо используйте обозначение продолжения, см точка).

  • Ключевое слово "then" можно заменить на перевод каретки или запятую. Инструкции instructions1 исполняются, если expr1=expr, и т. д.

В соответствии с договорённостями по написанию кода в Scilab рекомендуется:

  • начинать новую инструкцию на новой строке;

  • писать не более одной простой инструкции на одной строке;

  • разбивать составные инструкции на множество строк.

Например, используйте:

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

а не:

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

Предупреждение: число символов, используемых для определения тела любой инструкции условия (if while for или select/case) должно быть ограничено 16К.

Примеры

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

Смотрите также

  • if — ключевое слово для условного выполнения
  • while — ключевое слово while
  • for — ключевое слово для циклов

История

ВерсияОписание
6.0.0 select is now protected: Assignments like select=1 are no longer possible.
Report an issue
<< return Управляющая логика then >>

Copyright (c) 2022-2023 (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:
Tue Mar 07 09:28:36 CET 2023