投稿
i7 2630QM 634218
TXTに何も入ってなかったら名前登録行きの条件式を作ったのですが、うまくいきません、だめなところを教えてください。
0そうだね
プレイ済み
返信[1]
親投稿
ツララ LongIceSword
多分@BBSラベルの前のIFが構文エラーになるのと サブルーチンの@BBSに対応するRETURNが有っても上手く行かないなら、WHILEが終了した後にNM$==""を条件式にIF文を書いて、WHILEの前にGOTOさせてやればいいんじゃないでしょうか?
0そうだね
プレイ済み
返信[2]
親投稿
i7 2630QM 634218
とりあえずIFは上手くい き ま し た が VAR(DIM)がエラーに…。
0そうだね
プレイ済み
返信[3]
親投稿
マギー M191246
このままだと、@AGWの処理が 終わったあと、戻ってきて 名前登録の処理になりそうな気がします。 追加で、@AGWの前のGOSUBは はずしてみてください。
1そうだね
プレイ済み
返信[4]
親投稿
ツララ LongIceSword
ラベルの下で変数定義してあるので、GOSUBで飛ぶ度に変数を再設定することになるので同じ名前の変数が既に設定されていますという意味のエラーですね。 ある程度処理がまとまって来たら変数宣言はプログラムの先頭にまとめて移動させてやれば回避できますよ。
1そうだね
プレイ済み
返信[5]
親投稿
マギー M191246
条件式、逆になっていません? よく見たら、 @BBSの前のGOSUBもなくていいように思います。
1そうだね
プレイ済み
返信[6]
親投稿
マギー M191246
あるいは、両方残したままにして IF文の直後にメインの処理に戻る指示を 入れるようにするとか?
1そうだね
プレイ済み
返信[7]
親投稿
i7 2630QM 634218
うーん・・・。とりあえず初期設定は別でするようにしておきます。 追伸 俺にIF文は早かった
0そうだね
プレイ済み
返信[8]
親投稿
こうやま kouyama1967
 あと41~50行ですが LOCATE 0,28 FOR I=0 TO 9:? MID$("Version1.0",I,1);:WAIT 2:NEXT  とすると、こんなに短くなります。  この機会にLEFT$関数、RIGHT$関数、MID$関数を覚えてみましょう。文字列の操作が非常に楽になります。
1そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
MID$を覚えるというのは重要ですが、短くするのが目的ならばMID$("Version1.0",I,1);の部分は"Version1.0"[I];とすることもできますね。
1そうだね
プレイ済み