家の近くにセブンイレブンがあり、買い物ついでに時々BIGくじをついでに買うということをしています。
100円BIGやMEGABIGなどいろいろな種類を購入しますが、昔当たったくらいで、なかなか当たらないのが宝くじですよね。
今回は、BIGを何枚も購入したと仮定してどのくらい当たるかを確認しようと思います。
いつものPHPを使用したシミュレーションをしていこうと思います。
BIGくじ
BIG、MEGA BIG、100円BIG、BIG1000、mini BIG の5種類が販売されています。
購入は宝くじ売り場やコンビニで可能です。
1口100円~300円から購入でき、種類によって当選するために必要なあたり数や、賞金額が異なります。
公式サイト
BIGトップ|スポーツくじ「BIG」
BIGトップについて紹介します。最高6億円くじ「BIG」オフィシャルサイト。だれでも高額当せんのチャンス!コンピュータがランダムに選択した14コの数字が試合結果と全て一致したら見事一等当せん!
PHPでコードを書く
今回は14個数字が必要なもの(BIG・100円BIG)に絞って書いていきました。
もう少し書こうと思えば、種類を選べばそれにあった抽選結果を確認することができますが、それはまたの機会に書いていきたいと思います。
コード
※ツール使用なしのためインデントが微妙です。すみません。。。
<?php
//当選数をランダムで選択
for($i = 0;$i < 14; $i++){
$winning_number[$i] = random_int(1,3);;
}
//買う回数
$num = 1000;
$record = array();
for($i = 1;$i < $num; $i++){
$big_kuji = array();
for($a = 0;$a < 14; $a++){
$big_kuji[$a] = random_int(1,3);
}
$hit = 0;
foreach($big_kuji as $key => $kuji){
if($kuji == $winning_number[$key]){
$hit++;
}
}
// echo $i . '回目:' . $hit . '個一致 ';
if($i % 10 == 0){
// echo '<br>';
}
if(!isset($record[$hit])){
$record[$hit] = 0;
}
$record[$hit]++;
}
echo'<br>';
ksort($record);
echo$num.'個購入して';
echo'<br>';
foreach($record as $key => $value){
echo$key.'個一致:'.$value.'回';
echo'<br>';
}
結果 1000回
1000個購入して
0個一致:2回
1個一致:20回
2個一致:89回
3個一致:149回
4個一致:206回
5個一致:235回
6個一致:149回
7個一致:89回
8個一致:36回
9個一致:16回
10個一致:5回
11個一致:2回
12個一致:1回
0個一致:2回
1個一致:20回
2個一致:89回
3個一致:149回
4個一致:206回
5個一致:235回
6個一致:149回
7個一致:89回
8個一致:36回
9個一致:16回
10個一致:5回
11個一致:2回
12個一致:1回
結果 1000000回
1000000個購入して
0個一致:3514回
1個一致:23994回
2個一致:78030回
3個一致:155628回
4個一致:215073回
5個一致:214135回
6個一致:160625回
7個一致:91355回
8個一致:40245回
9個一致:13319回
10個一致:3381回
11個一致:611回
12個一致:83回
13個一致:5回
14個一致:1回
0個一致:3514回
1個一致:23994回
2個一致:78030回
3個一致:155628回
4個一致:215073回
5個一致:214135回
6個一致:160625回
7個一致:91355回
8個一致:40245回
9個一致:13319回
10個一致:3381回
11個一致:611回
12個一致:83回
13個一致:5回
14個一致:1回
最後に
PHPで実行して、結果を得ることができました。
ランダムではありますが、1000個買ってやっと当たりに近づくといった結果となりました。
やはり簡単に当てることは難しそうですね。。。
まあ夢を買うつもりで、また気が向いたときは購入したいと思います。
PHPコードもさらに拡張していければと思います。