投稿
らいち zero120802
RND文などのシートIDってのがわからないんですが… 何に使うんでしょうか…?
5そうだね
プレイ済み
返信[1]
親投稿
要は乱数のパターンを複数持てる、という事かと。 簡単な例だと落ち物パズルを作って、対戦の時は「同じパターンで落ちてこないとフェアじゃない」ってのがあります。 そこで1人用と対戦用それぞれシートIDを割り振って(例えば1人用だと0、対戦だと3とか)3のみRANDOMIZEで乱数を固定させればいいとか、に使えると思ってます。
0そうだね
プレイ済み
返信[2]
親投稿
おかっぺ Japanese_WASABI
コンピュータの乱数は、呼ばれる都度、乱数を作っているのではなく、あらかじめ決まった方法でランダムに見える数値を用意しておき、順番に返して来るだけなのです(ナ,ナンダッテー) よく考えると、コンピュータが毎回、異なる処理をするのって不思議よね。 そして、RANDOMISE で指定した乱数の種(シード)によら、その種の設定の乱数を順番に返して来ます。 シードIDは、その設定を複数持てると言うことかと。 ※僕は間違って覚えていることも多いので間違っていたらごめんなさい。
0そうだね
プレイ済み
返信[3]
親投稿
おかっぺ Japanese_WASABI
ゲームでどう利用するかは、みけらんジェロさんの書いてる使い方。乱数でマップを作るゲームで、以前と同じマップを使いたい、でも、敵の動きは別にしたい、等の時に使えるのではないかと思います。 後、プロの方たちは通信ゲームで2台のマシンの乱数を揃えて、乱数の値を通信させない、なんて使い方もするそうです。 ps 昔は乱数の種の設定が固定になってて、同じ行動をすると、必ず同じレアアイテムを落とすRPGなんかもありました(笑)
0そうだね
プレイ済み
返信[4]
親投稿
おかっぺ Japanese_WASABI
×同じ行動をすると ○電源を入れた直後に同じ行動をすると
0そうだね
プレイ済み
返信[5]
親投稿
らいち zero120802
シードIDを揃えると同じ値が返るのですか?
0そうだね
プレイ済み
返信[6]
親投稿
おかっぺ Japanese_WASABI
シード値を設定すると、いつも同じ順番で帰ってきます。 RANDOMISE 0,1 PRINT RND(10) PRINT RND(10) PRINT RND(10) PRINT RND(10) PRINT RND(10) と試してみてください。
0そうだね
プレイ済み
返信[7]
親投稿
おかっぺ Japanese_WASABI
ちょっと説明が悪かったです。先程のプログラムを何回か先頭から試しに動かしてみてください。 93325になるはずです。僕には未来が見えるのです。
0そうだね
プレイ済み
返信[8]
親投稿
おかっぺ Japanese_WASABI
せっかくなので、シードIDを使った例も RANDOMISE 0,1 PRINT RND(10) PRINT RND(10) PRINT RND(10) PRINT RND(10) PRINT RND(10) PRINT RND(1,10) PRINT RND(1,10) PRINT RND(1,10) 93325...うぅ、何故だ、未来が見えない。
0そうだね
プレイ済み
返信[9]
親投稿
らいち zero120802
なるほど!わかりました! 皆さん回答ありがとうございます RANDOMISE でシードIDしか指定していなくてシード値が指定されてなくて結果どれもバラバラになっていたので訳がわからなくなっていました(笑)
0そうだね
プレイ済み