前回までで1~15の数字をきちんと並べるコードは作ることが
出来ました。今回からはその数字(以下パネル)をバラバラに並べる
ことがテーマです。なぜならば15パズルはバラバラになったパネルを
整列させるゲームですから。
【´・ω・`】:15パズルを作るんだから、当然パネルがランダムに 配置されるようにしなければならない。 【´・ω・`】:乱数を使う。15パズルだけではなく、一般的にゲームを作るときは 乱数が非常によく使われる。 使えば0以上1未満の乱数を作ることが出来る。例えばひとつのさいころを 振ったときのように1から6までの乱数を作りたいときには下のように やればよい。 | ||
=Int(Rand() * 6)+1 | ||
(●`ε´●):Intってなんだ? (2)従ってRand() * 6は0以上6未満の乱数を作る。 (3)Int関数は与えられた数値をその数値を 越えない最大の整数に変換する。 (4)従ってInt(Rand() * 6)は0から5までの整数値になる。 (5)従って=Int(Rand() * 6)+1は1から6までの整数値になる。 | ||
| ||
(●`ε´●):なるほど。では双六のように二つのさいころを使うゲームの時は 2から12までの数字になるわけだから下のような式に すればいいんだな?
| ||
=Int(Rand() * 10)+2 | ||
【´・ω・`】:甘いな。 ランダムに作ることができるだろう。ただ、さいころを二つ振った場合は 例えばぞろ目の2がでる場合と7がでる場合は確率が同じでないから そのあたりも考慮して式を立てる必要がある。 いけないというわけだな。では15パズルの場合は単純に1から15までの 整数値を作ればいいわけだから下の式でいいわけだな? | ||
=Int(Rand() * 15)+1 | ||
【´・ω・`】:そう。 | ||
うかれているべべちゃん。果たしてそううまく行くのであろうか…(続く) |
コメント