レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
おちゃめくらぶ掲示板
-
レスにょ
ゆうきさんへ
>なので、分かりやすく色々な命令を解説しているサイトとかを教えてください!
私が書いているプチコン3号入門講座がオススメにょ!
http://ochameclub.web.fc2.com/petitcom3/lecture/
と言いたいけど予定の半分弱の所で更新が停滞気味なのがネックにょ。
というわけで、私より前にプチコン3号講座を書いているかなだらいさんのサイトをオススメ
するにょ。
http://kanadaraimk2.web.fc2.com/
すでに基本命令はすべて解説済みとなっているにょ。
さすがに私が書いている入門講座ほどは詳しく書いてないけどね。(まぁ私の入門講座は
無駄に詳しいというのがメリットでもありデメリットでもあるけど)
>あと、僕は小学生なんですがプチコンは小学生でも出来ますか?
大人でもできない人はできないし小学生でもできる人はできるので年齢はあまり関係ないと
思うにょ。
最初はできないのは当たり前なので「できるようになりたいかどうか」「やっていて
楽しいかどうか」が非常に重要にょ。
>あと、DATA命令で出来ることについて教えてください!
私のプチコン3号入門講座を読んでね!と言いたいところだけど今の更新ペースだと何ヶ月
後になるのか分からないのが難点にょ。
というわけで、天郷思音さんの解説と私の補足を読んでみてにょ。
みほさんへ
>プチコンは一年以上やっていますが、未だに初心者ですよ私(mkIIからやっています)。
>私も、DATAがよくわからないので教えていただけると助かります。
とりあえず、基本的な部分は天郷思音さんが書いているのでそれを参考にして欲しいにょ。
補足するならばREAD〜DATAの必要性くらいにょ。
例えば5教科分のテストの点数を変数に入れる場合には次のようになるにょ。
TEST1=60
TEST2=85
TEST3=70
TEST4=90
TEST5=75
これをREAD〜DATAを使うと次のようになるにょ。
READ TEST1,TEST2,TEST3,TEST4,TEST5
DATA 60,85,70,90,75
この時点ではREAD〜DATAを使うメリットは何もないにょ。
では、これが5教科、200人分のテストの点数だったらどうなのかを考えてみるにょ。
そうなると変数=数値のように代入を1000回繰り返すことになるにょ。
READ〜DATAを使うとどうなのかというとこれだけではメリットがなくてFOR〜NEXTと配列
変数を使うことで始めてそのメリットが大きくなるにょ。
DIM TEST[200,5]
RESTORE @A
FOR I=0 TO 199
FOR J=0 TO 4
READ TEST[I,J]
NEXT
NEXT
@A
DATA 60,85,70,90,75 ' 1にんめのデータ
DATA 90,76,90,55,80 ' 2にんめのデータ
(中略)
DATA 95,40,65,70,85 ' 199にんめのデータ
DATA 85,90,95,80,95 ' 200にんめのデータ
このようにデータは200行分になるけど変数=数値のような記述よりもトータルの文字数が
減るということだけではなくプログラム本体とデータのリスト上での分離が可能になるため
データの管理がしやすいというのがREAD〜DATAを使う大きなメリットとなるにょ。
入れる変数が変わったら直接代入した場合には1000個の代入をすべて手動で書き換える
必要があるけどREAD〜DATAならばループ内の1箇所を書き換えるだけで済むにょ。
RESTOREによる参照データを変えればプログラムを書き換えることなしに同じプログラムで
別のデータを使うことができるにょ。(@ST1がステージ1のデータ、@ST2がステージ2の
データのようにしておけばデータ作成プログラムでデータを作っておくだけで後から
いくらでも簡単にステージを増やせる)
つまり、ある程度のデータ量がないとREAD〜DATAのメリットは分かりにくいにょ。
配列変数に入れるメリットとしてはデータの再利用や分析をしやすくなるということにょ。
読み出す際もループに入れるだけで済むし、並べ替えや平均値を求めたりとかグラフで表示
したりというのも配列変数に入れておけば簡単にできるにょ。(ちなみに配列変数はDIMでも
VARでもどちらで定義しても全く変わらない)
配列変数に入れるだけならばREAD〜DATAを使用しなくても可能けどただでさえ直接代入
したら長くなるのに配列変数に入れたら添え字の分だけさらに長くなるにょ。
配列変数はループに入れて処理しないと価値が半減だけどそのループに入れて処理するのに
READ〜DATAは必要不可欠になるにょ。
初心者向けの講座のサンプルプログラムとかは大抵はデータは数個止まりだからREAD〜DATAを
使うメリットはあまり感じさせないけど実際は多くのデータを扱えば扱うほどREAD〜DATAは
メリットが大きくなるにょ。
プチコン3号の場合だとDATAさえ記述しておけばCOPY命令で配列変数にデータを入れることが
できるのでループの必要さえないにょ。(READの代わりにCOPYを使うだけなのでDATAは必要)
DIM TEST[200,5]
COPY TEST,@A
@A
DATA 60,85,70,90,75 ' 1にんめのデータ
DATA 90,76,90,55,80 ' 2にんめのデータ
(中略)
DATA 95,40,65,70,85 ' 199にんめのデータ
DATA 85,90,95,80,95 ' 200にんめのデータ
これはあらかじめデータ数が決まってない場合には使えない(配列変数はデータ数と全く同じ
大きさだけ確保しておかなくてはならない)のでそういう面では汎用的に使えるREAD〜DATAを
先に覚えておく必要があるにょ。
天郷思音さんへ
READ〜DATAの解説どうもにょ。
>何かができるというかなんというか
>単にデータを書くための命令だからなぁ
大量のデータを扱うプログラムを書く機会が今までにない初心者だとそのメリットは
伝わりにくいかもしれないにょ。
マリモーマさんへ
>RESTORE命令が忘れられてたから 探してきた
常に先頭からデータを読み込むならばRESTOREは不要だけどそうでないならば必要になって
くるにょ。
プチコン3号は最大4本のプログラムを同時編集、同時実行が可能になっているけどRESTOREも
事前にUSE 1のようにしておけば他のプログラムリストのDATAを読み込むことが可能にょ。
つまり、プログラムとデータのリスト上での完全分離が可能になるということにょ。
|
|
|
掲示板管理者へ連絡
無料レンタル掲示板