▽1
●
きゃづみぃ ベストアンサー |
その確率は 何本に対してですか?
たとえば 10本に対して?
100本に対して?
とりあえず 100本分の配列を用意し、
それに 順に 値をセットしていきます。
それから その配列を順に 乱数で出た値の箇所と 交換して
かきまぜるようにします。
で おみくじを出すときは 配列の順に出せばいいだけです。
配列がなくなったら 再度 セットしなおせばいいでしょう。
例えばこういうグラフを想像してください
http://officeimg.vo.msecnd.net/ja-jp/files/160/390/ZA010224896.gif
|-0-|----1----|-2-|---3--|---4--|-5-|
すると0の範囲は0%?10%、1の範囲は10%?40%、2の範囲は40%?50%、……となります。
(正確には0%以上10%未満、10%以上40%未満……○%以上100%未満、となります)
全体で100ですからrnd(100)で得た数字が、このグラフのランダムな位置に当てはまります。
それがどの範囲なのかif文などで判定してください。