Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語
Справка Scilab >> Scilab > Управляющая логика > select

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 — ключевое слово для циклов
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 14 15:13:18 CET 2017