ひろじいべーしっくch(旧:ひろじいチャンネル) 第七回の動画の解説(0-007)
結論
DIM 配列の寸法を設定するよ。
COLOR 文字(数字を含む)に色を付けたい時の命令だよ。
変数について
下記の配列の説明をする前に、その構成要素である変数について説明しておきます。
公式リファレンス(言語仕様)でも説明されていますが、変数とは「変数は任意の値を格納するための箱に相当する物である。」とあります。
変数名については命令と一致していなければ設定できるほか、英字と数字をあわせて設定することができます。(例:A2、ZA)なお、数字を先頭にするとエラーになります。(例:3Dという名前で変数を設定しようとするとエラーになります。)
文字を代入する際には変数の末尾に$を付けます。
配列について
配列は添え字で管理できる変数の集合体です。
DIM命令やVAR命令で設定できます。(下記の「プログラム」の項を参照。)
添え字を複数で管理することにより多次元的に変数を扱うことができます。
添え字はあくまでも変数の個数の大きさ(寸法)であることから、0を除く正の整数、すなわち自然数となります。
配列変数名の次に[]を設けて、その中に添え字を付けることで配列を表します。
(例:A[3]、X$[2,3]、C1[6])
下記の「プログラム」の項にDIMの命令の説明もありますが、ここでは一例を記載しておきます。
0次元の配列(1次元で大きさ1の配列)
DIM命令では変数の寸法を表します。
DIM JD[1]では、配列変数名JDを一次元で大きさ(個数1)で寸法を設定しているので、正確には0次元ではないことになりますが、ここでは通常の変数と変わりがないということで0次元として紹介しておきます。
以下はDIM JD[1]のイメージです。この場合は寸法が1個ということです。添え字は0からスタートなので、配列変数はJD[0]の1個となります。
1次元の配列
一例としてDIM JD[12]となります。この場合、配列変数名JDを一次元の大きさ(個数12)で寸法を設定しています。
例えば直線的なイメージとなります。添え字は0からスタートします。従って12個の場合には添え字は0から11になります。
他の言語によってはこの寸法の設定や添え字のスタートが異なるので、注意して下さい。
2次元の配列
一例としてDIM JD[4,3]となります。この場合、配列変数名JDを二次元で寸法を設定しています。
3次元の配列
一例としてDIM JD[4,3,5]となります。この場合、配列変数名JDを三次元で寸法を設定しています。
4次元の配列
一例としてDIM JD[4,3,5,3]となります。この場合、配列変数名JDを四次元で寸法を設定しています。
プログラム
今回のプログラムはこちら。(公開キー44425K433、LOAD“N07_JUMP”)
このブログにおいてはなるべく専門用語を使用せずに非常に短く簡潔に説明しています。
詳細を知りたい方は公式リファレンス等も参照してください。
[]については省略可能ですが、一部の命令(例えば今回のDIM)については最低一つの[]は必要です。
DIM
DIM 配列変数名[添え字[,添え字,添え字,添え字]]
読み方は「ディメンション(ディメンジョン)」。英語 dimensionの略。英語のdimensionについては直接的には「配列」と直訳できない様だが、プログラミング上では、変数の集合体の寸法という意味や次元的に管理するという意味合いが関わっている。
添え字については、公式では要素数と表記されている。他言語(VBAとか)ではインデックスとも言われている。VAR命令も同様に扱う。
DIM 配列変数名[[要素数[,要素数…]]]=[値1,値2,…]
最初からその配列にそれぞれ要素の個数分をなんらかの初期値とする場合には、上記の様に等号の次に初期値リスト([]内に値1や値2など並べる)を設定できます。
DIM 配列変数名[]=[値1,値2,…]
要素数を省略すると、値の個数が要素数の1次元配列となります。
COLOR
COLOR[スクリーンID,]色コード
読み方は「カラー」。文字(数字を含む)に色コード(先頭が#C_)又はRGB命令で色を付ける命令です。
スクリーンIDは下記の図(プチコン4電子取り扱い説明書6ページ。)でそれぞれ0~4がそれぞれTEXT0~TEXT4を示します。スクリーンIDを指定すると、それぞれの階層にある文字の色を変更します。
スクリーンIDを省略するとTEXT4の文字の色を変更します。
動作の説明
ここでは動画内で説明を省略したフローチャートを中心に解説します。
初期画面を描いた後、ボタン入力の管理については@BOTANサブルーチンを必ず通る様にして@MAIN内で無限ループしています。
@BOTANサブルーチン内において、Aボタンが押される(J=0の時に限る)とジャンプのフラグ兼動作位置を示す変数Jを1にします。
@BOTANサブルーチン内において、Xボタンが押されるとGLCSを実行して画面を元に戻し、文字の色も白にして終了します。
@BOTANサブルーチンから(RETURN通過で)帰還すると、次にJが0を超えている(ジャンプ中)であれば、そのジャンプの位置を確定させるために@JUMPサブルーチンに移動します。
@JUMPサブルーチン内において、まずJが13であるかどうかを判定し、そうであればJを0にして帰還します。Jが13ではないのであれば、Jは1から12までのいずれかに該当するので配列の添え字に相当する分(配列は0からスタートするので、ここでJから1を引いた数に相当します。)を設定し、その配列変数の分だけタテ座標(変数Y)を変化させ、Jを一つ加算(ジャンプの過程を一つ進める)してサブルーチンを帰還します。
まとめ
DIM プログラミング上では、変数の集合体の寸法という意味や次元的に管理するという意味合いが関わっています。
COLOR 文字(数字を含む)に色を付けたい時の命令です。スクリーンIDについても頭の隅にいれていただきたいです。
コメント