# if, then, elseif, else, endif

条件分岐

## 1) 書式1

    if <expression> <statement>

### 解説

もし <expression> が真(0以外)ならば、コマンド <statement> を実行する。

### 例

    ; もし A>1 ならば、':label' へ飛ぶ。
    if A>1 goto label

    ; もし result<>0 ならば、A に0を代入。
    if result A=0

## 2) 書式2

    if <expression 1> then
      ...
      (<expression 1> が真(0以外)の場合に実行されるコマンド)
      ...
    [elseif <expression 2> then]
      ...
      (<expression 1> が偽(0)で、<expression 2>が真の場合に実行されるコマンド)
      ...
    [elseif <expression N> then]
      ...
      (<expression 1>, <expression 2>,.., <expression N-1> がすべて偽で、<expression N> が真の場合に実行されるコマンド)
      ...
    [else]
      ...
      (上の条件すべてが偽の場合に実行されるコマンド)
      ...
    endif

### 解説

'then' は 'if' と 'elseif' 行の最後になければならない。
'elseif' と 'else' はなくてもよい。
'endif' は必要。

### 例

    if a=1 then
      b = 1
      c = 2
      d = 3
    endif

    if i<0 then
      i=0
    else
      i=i+1
    endif

    if i=1 then
      c = '1'
    elseif i=2 then
      c = '2'
    elseif i=3 then
      c = '3'
    else
      c = '?'
    endif

### *) 注意事項

(バージョン 4.90 以降)
書式2(if - endif)において、thenの記述なしは文法エラーとなる。

    code = 100
    if code != 100
    	messagebox 'The code value is not 100.' 'error'
    	goto error
    else
    	messagebox 'The code value is 100.' 'OK'
    endif

    :error
    end

## 参照

- 式と演算子