Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
114 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 3449
次のページ(過去)
返信[4]
親投稿
更に応用編その2。 RESTORE @CHARA FOR I=0 TO 3 READ A$,B$:PRINT A$;"は、";B$;"へ いきます" NEXT RESTORE @YOUBI READ A$:PRINT A$;"の よていです。" @YOUBI DATA "げつようび" @CHARA DATA "あに","ほんや","おとうと","とこや","いもうと","としょかん","あね","コンビニ" READでは「上から順に」読みこみますので、読ませたいデータにラベルを付けると違うデータを読みこまさせないようになりますよ。 あとさっきのに@CHARAを付けて無かったですね。
0そうだね
プレイ済み
返信[2]
親投稿
応用編。 RESTORE @CHARA FOR I=0 TO 3 READ A$,B$:PRINT A$;"は、";B$;"へ いきます" NEXT DATA "あに","ほんや","おとうと","とこや","いもうと","としょかん","あね","コンビニ" READで読むデータを2つ設定すると、データも2つを1セットにして読みこみます。3つ以上も出来ますよ。
0そうだね
プレイ済み
返信[1]
親投稿
DATAはREADとRESTOREの3つで1セットと覚えて下さい。 RESTOREで読みこみたいデータを指定、 READでデータを読みこむ、 DATAは読まれる側のデータという意味です。 RESTORE @CHARA FOR I=0 TO 3 READ A$:PRINT A$;" が います。" NEXT @CHARA DATA "あに","おとうと","いもうと","あね" このデータ文を色々といじくってみて下さい。
0そうだね
プレイ済み
返信[5]
親投稿
続いてDEF。 例えば「表示だけ」、「計算だけ」、「読みこみだけ」のように1つの事だけを行いたい時にはDEFの方が便利です。 FOR I=0 TO 9 STAR RND(50),RND(30) NEXT END DEF STAR SX,SY LOCATE SX,SY:?"★"; END こんな感じになります。DEFの最後はENDで締めるのを忘れずに。
1そうだね
プレイ済み
返信[4]
親投稿
GOSUBの使い方。 同じような処理をどの場面でも使いたい場合や自機の移動や敵機の行動など「ブロック単位」でやりたい事をひとまとめにして作るのがサブルーチンつまりGOSUBです。 FOR I=0 TO 9 GOSUB @STAR NEXT END @STAR LOCATE RND(50),RND(30):?"★"; RETURN こんな感じで。
1そうだね
プレイ済み
返信[3]
親投稿
ループあれこれ。 1.ラベル(@から始まる文字列)へGOTOでジャンプ。  利点:複数のIFによる分岐に対応しやすい 2.FOR TO NEXTで指定回数のループ。  利点:○回繰り返したい等延々ループさせたくない場合はこれ 3.WHILE~WEND,RELEASE~UNTILのループ  利点:1つだけ条件を満たした時にループを抜けたい処理にしたいならこれ お好みで、というより用途に合わせて使い分けましょう。
1そうだね
プレイ済み
返信[1]
親投稿
タッチを使うならTOUCH OUTを使いましょう。ただしループの中に入れて毎回登録させないとすぐにタッチが効かなくなるので注意。私の活動の中でそういうのを使ったゲームとかありますので参考になれば。
0そうだね
プレイ済み
返信[9]
親投稿
そもそも197行で乱数を初期化してますから毎回同じ台詞しか出てこなくなるかと。
0そうだね
プレイ済み
返信[5]
親投稿
あーごめんなさいデータ11個ありました。 DATA "PETIT","NO3","SMILE","BASIC","ENJOY","PROGRAM","NOT","DIFICULT","JOIN","US" ここまでで。
1そうだね
プレイ済み
返信[3]
親投稿
「1つの文字列からランダムに文字を抜きだす」のか「複数のデータから1つを抜きだす」かで回答は変わってきます。 後者を例に取りますが、配列変数にデータを放り込んで抜きだすのが簡単かと。 DIM D$[10] FOR I=0 TO 9:READ D$[I]:NEXT DATA "PETIT","NO3","SMILE","BASIC","ENJOY","PROGRAM","NOT","DIFICULT","JOIN","US","." ?D$[RND(10)] こんな感じで。英語適当ですが。
2そうだね
プレイ済み
返信[10]
親投稿
流れに乗ります。絵心が無いのでアイコンは任せます。
0そうだね
プレイ済み
返信[28]
親投稿
こうやって1つ1つ勉強すればいいと思ってる私。スルーのスキルとか対処法として管理人様へ連絡とかの意味で。 あと私の理由は自分のアイデアを具現化出来る手段だからですかね。その上で面白い楽しい物を作れたら、と思ってます。
3そうだね
プレイ済み
返信[2]
親投稿
問題無く動きますよ。 ひょっとしたらその直前にBUTTON()でAボタンを押させるとかしてないでしょうか。 Aボタン=Enterとなってますのでそれが誤動作の原因になってるのかも知れないです。 押しっぱなしにしているボタンや十字キーを離すまでストップをかけるには WHILE BUTTON()!=0:WEND とかが使えますよ。
2そうだね
プレイ済み
返信[8]
親投稿
>gobotさん 解説どうもです。ローマ字として正しいかどうかは文字列に "AIUEO"と"KSTNHMYRWGZDBP"これが入ってるかどうかをチェックすればよろしいかと。 先にチェックを行って、検索に当たるのならばコード変換して結果として表示する。これだけでかなり短く出来るかと。
1そうだね
プレイ済み
返信[5]
親投稿
打ってみれば分かりますよ。 ASCは1文字分の文字を文字コードとして返します。 MID$は文字列から指定した文字を抜きだす。この場合はFOR-NEXTで0(1文字目)からLEN(ANGO$)-1(何文字あるのかを返す関数から1を引く→最後の文字)まで繰り返します。 64を引いてるのは「A」が65を返すのでそこから64を引いて1を出すようにしています。 まぁやってみりゃ分かりますよ。
1そうだね
プレイ済み
返信[2]
親投稿
ボタンを押したらスキップできるようにするかWAITの値を0にすればよくなるかと。
1そうだね
プレイ済み
返信[3]
親投稿
あ、違う何がしたいのか分かった。 INPUT ANGO$ FOR I=0 TO LEN(ANGO$)-1 ?ASC(MID$(ANGO$,I,1))-64;" "; NEXT これだけで近しい事は出来るかと思われます。
0そうだね
プレイ済み
返信[2]
親投稿
データ文と連動させてFOR-NEXTで符合するまで繰り返し検索させるか何かいい方法はあると思われます。 あとそのスクショだけだと例えば「G」と「A」を分けた方が短くなる気も。 色々とシェイプアップ出来そうなプログラムに見えますよ。
0そうだね
プレイ済み
返信[1]
親投稿
SAVE "GRP0:":GLD$,GOTO @D が文法上おかしいです。 SAVE "GRP0:"+GLD$:GOTO @D に直してみてください。
0そうだね
プレイ済み
返信[4]
親投稿
そういう時は色々ダウンロードして楽しむのです。
1そうだね
プレイ済み