プログラムを組んでいると、何かを一時的に記録していく必要性が生じます。
例えば、EasyBATにはファイルの有無を確認する命令がありますが、存在したかどうかを一時的に記録しておけば、
あとからもう一度命令を実行しなくても存在を確認できます。
そのようなときに用いるのが「フラグ」です。
フラグはスイッチとも言いかえられます。ONとOFFの状態を持つのです。
例えば、ファイルが存在すれば、ONになければ、OFFにと言った具合です。
EasyBATでは上の画像のように50個のフラグ(スイッチ)が用意されています。
eBATから50個のうちのどれかを選んで、ONやOFFにしたり、
指定したフラグの状態を調べられます。フラグの操作はV3命令です。
コメント:初期状態は1^50番すべてが、OFFです。 「flag:1 = [FLAG:1] ON=1 OFF=0」と情報ダイアログを表示する。タイトルは「[TITLE]」。 コメント:[FLAG:n]でn番目のフラグの状態を取得できます。 ON:1 OFF:0 フラグ1番をONにする。 「flag:1 = [FLAG:1] ON=1 OFF=0」と情報ダイアログを表示する。タイトルは「[TITLE]」。
[FLAG:n]でフラグの状態(ON:1,OFF:0)を取得できます。フラグはON/OFFだけでなく、ON/OFF反転も可能です。
フラグの状態はプログラム終了時に全て破棄されます。
文字列変数はフラグがスイッチであったので対して、文字を記録できる黒板のようなものが50個並んでいるイメージです。 同じように、指定した番号の文字列変数に書き込んだり、指定した文字列変数を読み出すことができます。 ユーザーに文字列を入力してもらうU3命令と文字列変数操作のV2命令を使ってみましょう。 U3命令は結果を[DAT]という呼出文字列に格納します。(つまり、2回呼び出すと、1回めの結果は2回めで上書きされてしまいます。)
「姓を入力してください。」と文字列入力ダイアログを表示する。入力欄に予め「」と表示。 コメント:{DAT]に姓が入ります。 文字列変数1番に「[DAT]」と代入する。 コメント:これで1番に姓が入ります。 「名を入力してください。」と文字列入力ダイアログを表示する。入力欄に予め「」と表示。 文字列変数2番に「[DAT]」と代入する。 コメント:これで2番に名が入ります。 「あなたは、[STR:1] [STR:2] さんですね。」と情報ダイアログを表示する。タイトルは「[TITLE]」。 コメント:呼出文字列[STR:n]はn番目の文字列変数の中身に置き換わります。
このように、一時的に文字列を記録することができます。
文字列変数はプログラム終了時に全て破棄されます。
数値変数は同じように、数値を記録する何かが50個並んでいるイメージです。 そして、数値変数の最大の特徴はこれを用いることで、整数の四則計算が行える点にあります。 (もちろん、数値を一時的に記録することもできます。) 数値変数の操作はV1命令です。
コメント:数値変数の初期値はみんな0 「INT:1 = [INT:1]」と情報ダイアログを表示する。タイトルは「[TITLE]」。 コメント:代入してみる 数値変数1番に156を代入する。 「INT:1 = [INT:1]」と情報ダイアログを表示する。タイトルは「[TITLE]」。 コメント:整数の四則計算が可能 数値変数1番に「-3 * 2」の結果を代入する。 「INT:1 = [INT:1]」と情報ダイアログを表示する。タイトルは「[TITLE]」。 コメント:負の値も扱えます。
このように、数値を一時的に保存したり、簡単な四則計算が行えます。
{INT:n]でn番目の数値変数の値を取得でき、
数値変数同士で計算を行うことも可能です。(例:「[INT:2] + [INT:3]」)
数値変数はプログラム終了時に全て破棄されます。