乱数


ゲームには先のわからない面白さが必要であり
先のわからない状態を作るのが乱数である。


●乱数

使い方は簡単。まず、Randomizeを宣言し
乱数内容を初期化させておき、続いてRandom(数字)
使いたい乱数を指定する。

Randomizeで初期化させておかないと
毎回同じパターンの乱数が出てくるので注意。
Randomizeは、立ち上げ時に一度だけ初期化すればいいので
FormCreateに書いておけばいい。

Random(数字)は例えば4を指定すると0〜3が
100を指定すると0〜99の範囲で不規則な数字になる。
Randomize; //ランダム初期化
retu := Random(4);//0〜3のランダム

●生成種つきの乱数

毎回、必ず同じパターンの乱数が欲しい時がある。
そういう場合には生成種つきの乱数を使用する
RandSeed(46495963); //ランダム初期化
retu := Random(4);//0〜3のランダム
RandSeed(数字)と設定してやれば
起動後は必ず同じパターンの乱数が発生。

数字指定の範囲は、-2147483648〜2147483647。

違うパソコンでも同じパターンで乱数が発生する。

が、乱数パターンが今後も同じかどうか保障されていないので注意。
新しくOSが作られた時などに同じ数でも発生パターンが
まるっきり変わってしまう可能性がある。

OSが変わったら同じ数字指定でも
生成される面が変わってしまった、とか
パスワードを受け付けない、など困る場合も。

●その他の乱数

覚えることが増えても困るので紹介のみで。
使いたい場合は各自学習。
RandomRange(最小数字,最大数字)
 範囲指定でその範囲の乱数を発生。マイナスも指定できる。
 が、Random(7)-3などですむためあまり不必要。

RandomFrom(配列)
 指定した配列の中の内容をランダムに一つだけ返す。
 整数、文字列、どちらの配列も使えるので便利。

Random
 ()による数の指定が無いと、0以上1未満の実数で値を返す。
 整数による飛び飛びのランダムでなく、なだらかな実数での
 乱数が欲しい時に有効。

 戻る