Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
126 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 4672
次のページ(過去)
返信[18]
親投稿
otta777 otta777a
LOADの場合はLOAD "TXT:ファイル名",文字列変数 で文字列変数1個に結合した文字列が読み込まれますんで これを文字列配列変数に展開する必要があります。 LOAD "TXT:ファイル名",BUF$ P=0:N=0 REPEAT P1=INSTR(P,BUF$,",") IF P1==-1 THEN BREAK P2=INSTR(P1+1,BUF$,",") Q$[N]=MID$(BUF$,P,P1-P) A$[N]=MID$(BUF$,P1+1,P2-P1-1) P=P2+1:N=N+1 UNTIL P>LEN(BUF$)
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
1~64行のプログラムは278行以降に移動した方がいいと思います。 更に上ボタン、下ボタン、Aボタンを押したときの処理はループの中に 記述して1回で抜けてしまわないようにする工夫が必要です。 また「ファイル」を選んだときに表示するサブメニューは枠を先に 表示してから項目を表示しないと枠を描くときに空白で上書きされて しまうために項目が消えてしまいます。 直す場所が多いですがチェックリストを作って一つずつ修正してみて 下さい。
0そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
現状プログラムをRUNすると@PROのある1行目から実行しますが ボタン検出の条件を満たさないため65行目まで素通りします。 メインのメニューを表示してカーソルを「ファイル」の位置に移動して Aボタンを押すと@21に移動してダイアログを表示後に@PROに 移動しますがループするような構造になっていないため65行目まで 素通りしてまたメインのメニューの表示に戻ります。
0そうだね
プレイ済み
返信[16]
親投稿
otta777 otta777a
SAVE命令には文字列変数1個を一つのテキストファイルとして 保存する機能があります。 文字配列変数をそのままテキストファイルとして保存出来ないので 文字列変数に問題と解答を順番に区切りを付けて結合して 最後にこれで終わりと分かるように終了文字を結合してから SAVE命令で保存します。 BUF$="" FOR I=1 TO V BUF$=BUF$+Q$[I]+","+A$[I]+"," '問題+区切り+回答+区切り NEXT BUF$=BUF$+"*" '終了文字 FNAME$="TXT:ファイル名" SAVE FNAME$,BUF$
1そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
まずSPHITSPで衝突判定を行うスプライトに対してSPCOL命令で 衝突判定情報の設定はしていますか? 詳しくはSPHITSP命令、SPCOL命令のヘルプを参照して下さい。 あと気になったのは54行目でDEC BOSSLIFEFILESFILESと記述されていますが 入力間違いでは無いですか?
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
207行目の&&HUT<31はタイプミスじゃ無いですか?
1そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
カーソルを「ファイル」の位置に移動してAボタンを押すと@21に移動して ダイアログを表示後に@PROに移動するようなプログラムになってますよ。 やりたいことがこれと井違う場合はもう少し具体的にどうしたいか 書いてみて下さい。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
ファンクションキーの内容はKEY命令で変更が出来るのでその前に 実行していたプログラムで書き換えられたのでしょう。
0そうだね
プレイ済み
返信[14]
親投稿
otta777 otta777a
43行目のV=[I]でSyntax errorが発生しています。 変数Vに問題の数を代入するのでしたらV=Iで大丈夫ですよ。 [I]という表現は配列変数のI番目の変数を表現するときに使います。
2そうだね
プレイ済み
返信[11]
親投稿
otta777 otta777a
正解判定の一例です。FOR命令と配列変数を上手く使うと同じ処理をまとめて記述できますよ。
1そうだね
プレイ済み
返信[10]
親投稿
otta777 otta777a
DIM命令で配列変数の使用を宣言すると0から順番に番号が付くため 1~20を使いたい場合には21としています。
1そうだね
プレイ済み
返信[7]
親投稿
otta777 otta777a
20個を50個に変更することも出来ますよ。 その場合はDIM命令で宣言する配列変数の個数とFOR命令で繰り返しを する回数を変更して下さい。
1そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
【続き】 INPUT Q1$,A1$ INPUT Q2$,A2$ 3~19まで繰り返し INPUT Q20$,A20$ は DIM Q$[21],A$[21] FOR I=1 TO 20 INPUT Q$[I],A$[I] NEXT と表記できプログラムも格段に短くなります。 配列変数を使うときは配列変数を使う前にDIM命令で配列変数を 使用する宣言をして下さい。
1そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
プログラムを書いていて気付かれたかと思いますが変数名だけが違ってて 処理は同じ部分が何カ所かあったかと思います。 配列変数は分かりますか? Q1$→Q$[1] A1$→A$[1] Q20$→Q$[20] A20$→A$[20] の様に変数名に番号を付けて処理することができる機能があります。 そして Q$[I],A$[I]と表記すれば変数Iの数値によって参照する文字列変数が 変えられます。 【続く】
1そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
一度記録した問題を解いてから問題を変えるまたはタイトルに戻るで 問題を記録する場合に何も書かずにAを押すと以前入力した内容が 残ったままになっているため何も書かずにAボタンを押しても 記録が終わることが出来ません。 IF命令の条件を満たさないためです。 問題を入力し直す場合はQ1$~Q20$,A1$~A20$の中身を空にする (文字列""を代入する)必要がありますね。
1そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
ファイル名の末尾に.DATや.GRPを付けてファイル名にファイルの 情報を持たせるしか無いと思います。 @BACKUP.***のファイル名で自動保存するバックアップファイルは このルールで行っているようです。 デメリットはファイル名のうち自由に付けられる文字数が14文字から 10文字に減ってしまう事でしょうか。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
BEEP 87 まな板の上で食材を切る音 BEEP 50 (昔の)電子レンジの調理完了のチャイム BEEP 59 塩や胡椒を振りかける音 BEEP 80 鍋の中でお湯が沸騰してる音 BEEP 100 コンロに火を付ける音 それっぽく聞こえると思いますがどうでしょうか?
1そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
タッチした座標が5行目のGFILLで指定した描画範囲内の場合に 色を選択する処理を行うようにすると良いと思います。 色を選択する場合は描画する処理をしないように工夫が要りますね。 IF X>1 && X<339 && Y>220 && Y<550 THEN GOSUB @COLCHG ENDIF
1そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
INPUT命令でENTERキーだけを押した場合に記録を終了させる方法はあります。 INPUT "( 1)",Q1$,A1$ IF Q1$="" && A1$="" GOTO @1 'この行を追加 INPUT "( 2)",Q2$,A2$ IF Q2$="" && A2$="" GOTO @1 'この行を追加 以下Q19$までIF命令を追加 INPUT "(20)",Q20$,A20$ @1
1そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
INPUT命令で入力待ちをしている間はプログラムの処理が先に 進まないため入力待ちの間にXボタンを押してもBUTTON関数で Xボタンを押したか判別することができません。
1そうだね
プレイ済み