select select keyword

## Syntax

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

## Arguments

variable

  variable which value to be analyzed.

value1, ..., valuen

  values of `variable` for which there are appropriate instruction blocks `instructions 1, ..., instructions n`.

instructions

  block of valid instructions.

## Description

Notes:

- The only constraint is that each `then` keyword must be on the same line as corresponding `case` keyword (or use a continuation mark, see dot).

- The keyword `"then"` can be replaced by a carriage return or a comma. `instructions1` are executed if `expr1=expr`, etc.

According to the Code Conventions for the Scilab Programming Language it is recommended:

- Start each statement on a new line.

- Write no more than one simple statement per line.

- Break compound statements over multiple lines.

For example, use:

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

rather than

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

Warning: the number of characters used to define the body of any conditional instruction (if while for or select/case) must be limited to 16k.

## Examples

    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

## See also

- if
- while
- for

## History

6.0.0 `select` is now protected: Assignments like `select=1` are no longer possible.