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