IF ステートメント

構文

IF expression {THEN statements [ELSE statements] | ELSE 
statements}
IF expression{THEN statements[ELSE statements] |
ELSE statements}
IF expression {THEN    statementsEND [ELSE    statementsEND] | ELSE
   statementsEND}
IF expression 
{THEN    statementsEND 
[ELSE    statementsEND] |
ELSE    statementsEND }

説明

IF文を使って、の評価に基づいてプログラムの流れを決定する。 の値が真なら、THEN文が実行される。 の値が偽の場合、THEN文は無視され、ELSE文が実行される。 expressionがヌル値の場合、expressionはfalseと評価される。 ELSE文が存在しない場合、プログラムの実行は次の実行可能文から続けられる。

IF文には、THEN句かELSE句のどちらかが含まれていなければならない。 その両方を含む必要はない。

ISNULL関数は、ある変数の値がヌル値であるかどうかをテストしたいときに、IF文とともに使用する。 nullはそれ自身を含むどの値とも等しくないので、これがnull値をテストする唯一の方法である。 構文は、次のとおりです。

IF ISNULL (expression) ...

IFを書くことができる...THEN文を1行に書くか、数行に区切る。 ステートメントを数行に区切ることで、可読性を向上させることができる。 いずれにせよ、ステートメントは同じように実行される。

ネストできるIF...THENステートメント。 THEN文やELSE文が複数行に書かれている場合は、THEN文やELSE文の最後の文としてEND文を使用する必要があります。

条件付きコンパイル

IF文の改良版を使って、BASICプログラムの全部または一部をコンパイルする条件を指定することができる。 条件付きコンパイル文の構文は、テスト式を除いてIF文と同じである:TRUE、$T、$FALSE、$F。

X=10
IF X>5 THEN PRINT 'X IS GREATER THAN 5';Y=3
*
IF Y>5 THEN STOP ELSE Z=9;  PRINT 'Y IS LESS THAN 5'
*
IF Z=9 THEN PRINT 'Z EQUALS 9'
ELSE PRINT 'Z DOES NOT EQUAL 9' ;  STOP
*
IF Z=9 THEN
   GOTO 10
END ELSE
   STOP
END
*
10*
IF Y>4
   THEN
      PRINT 'Y GREATER THAN 4'
   END
   ELSE
      PRINT 'Y IS LESS THAN 4'
   END

これがプログラムの出力である:

X IS GREATER THAN 5
Y IS LESS THAN 5
Z EQUALS 9
Y IS LESS THAN 4