DIM

本ページには広告が含まれています。

ローカル変数(局所きょくしょ変数)を宣言します。

構文
DIM 変数名
DIM 変数名 = 値
引数
戻り値

変数

変数とは、数値や文字を格納しておくための箱のことです。

変数はデータを一定期間記憶し、必要なときに呼び出したり書き換えたりすることができます。

プログラム内で複数回使う値は宣言すると良いです。値に変更があったときに変数を使っていればその値を変更するだけで済みます。

他の言語では変数の宣言時に型の指定ができますが、UWSCでは変数名を宣言するだけです。

ローカル変数

UWSCでローカル変数を宣言するときにはDIMを使います。DIMはDimensionの略で次元を意味します。変数の宣言時に型の指定はなく、大文字小文字の区別もありません。

ローカル変数の宣言は省略可能ですが、OPTION指定で宣言を強制することができます。

宣言時に値を代入しなかった場合はEmpty型、数値を代入した場合は倍精度浮動小数点値型、文字列を代入した場合はUNICODE文字列型になります。

UWSC
結果
プレーンテキスト
UWSC
結果
プレーンテキスト
UWSC
UWSC
結果
プレーンテキスト

大文字・小文字の区別がないので、以下のように書いてもあいうえおと出力されます。

UWSC

カンマで区切ることで、複数の変数を1度に宣言することができます。

変数a,b, cを宣言します。初期値はすべてEmptyです。

UWSC

一部だけ初期値を代入することもできます。

UWSC

グローバル変数を宣言するにはPUBLIC、定数を定義するには定数定義を使います。

配列

変数は一つの数値しか記録することができませんが、配列は複数のメモリ領域を一つの変数と対応させます。まずは一次元配列について解説していきます。

配列の宣言

配列は以下のように宣言します。変数と違い配列は宣言が必須です。

UWSC

配列は複数の要素を持つので、変数名は複数形にすると配列とわかりやすくなります。

UWSC

変数名は通常の変数と同じようにつけることができます。変数名の直後の[ ]に配列の上限値を指定します。例えば以下はarrayという名前で添字が0から7の8つの要素を持つ配列となります。

UWSC

SAFEARRAY関数 (スクリプト関数)を使って宣言することもできます。以下はDIM array[7]と書くのと同じです。

UWSC

DIM array[数値]では下限値が0から始まる配列のみ宣言でき、下限値を0以外の値にする場合は、SAFEARRAY関数 (スクリプト関数)を使います。

第一引数が下限値を表していて、ここに0以外の数値を入れると下限値を変えることができます。以下は下限値が3、上限値が5の配列でarray[3]、array[4]、array[5]の要素にアクセスすることができます。

UWSC

配列要素へのアクセス

通常の変数では、変数名を通してその要素に対して読み書きを行いました。配列の各要素に対してデータの読み書きを行うためには以下のように[ ]で囲った添字そえじを指定します。添字とはインデックスとも呼ばれ、配列の要素を識別するための通し番号のことです。

UWSC

宣言のときに例に出したarray[7]の場合、添字は0から7の整数値ということになります。

以下はarrayという配列の添字が3の要素にアクセスできます。

UWSC

配列の初期化

変数と同様に、配列も宣言した直後は各要素Emptyで埋められます。宣言と同時に各要素の初期化を行うことができます。

UWSC

宣言したサイズ未満で初期化した場合、残りの要素はEmptyが代入されます。

以下は要素0から要素2には値を代入して、要素3から要素5はEmptyが代入されます。

UWSC

値を代入しない場合はカンマで飛ばすこともできます。以下は要素3から要素5には値を代入して、要素0から要素2はEmptyが代入されます。

UWSC

配列は初期化を行う場合にのみ、配列のサイズを省略することができます。

UWSC

配列のサイズを省略した場合、指定した要素の数に応じて自動的に確保されます。上の例では要素数が6つなので、以下のように配列のサイズを6で初期化したのと同様になります。

UWSC

要素数を数える手間がなくなるうえ数え間違いもなくなるので、初期化する場合配列のサイズを省略することをおすすめします。

以下のようにして下限値と上限値を調べることができます。

UWSC
結果
プレーンテキスト

空の配列を宣言するには以下のように要素数を-1にします。

UWSC

配列の添え字(要素番号)には\(-1<x<上限値\)の範囲の値を指定できます。小数の値を指定した場合は切り捨てられ整数として扱われます。

UWSC
結果
プレーンテキスト

添字が\(-1<x<1\)の範囲は添字0を指定したものと同様の扱いになります。

UWSC
結果
プレーンテキスト

また添字に-1未満の値を指定した場合は、エラーが発生します。

UWSC

多次元配列

多次元配列とは、二次元配列以上の配列のことを言います。

一次元配列のとき変数名の直後に[ ]を書くと配列になりましたが、この[ ]の数が配列の次元を表します。2つであれば二次元配列、3つであれば三次元配列となります。必要な次元だけ[ ]を続けて記述していきます。

UWSC

\(n\)次元目の配列のサイズを\(i_{n}\)で表すと、\(n\)次元配列は以下のように表すことができます。

\[array[i_{1}][i_{2}]・・・[i_{n}]\]

初期化するときは\(i_{1}\)のみ上限値を省略することができますが、\(i_{2}\)以降は指定する必要があります。

UWSC

また格納できる要素数は以下のように求めることができます。

\[要素数=(i_{1}+1)\times(i_{2}+1)\times・・・\times(i_{n}+1)\]

UWSC
結果
プレーンテキスト
二次元配列

以下の例は、二次元配列の値の代入・出力の方法を示したものです。

UWSC