ホームページ  >  記事  >  バックエンド開発  >  PHPランダム確率計算関数入門

PHPランダム確率計算関数入門

不言
不言オリジナル
2018-07-11 16:31:482389ブラウズ

この記事では主に PHP のランダム確率計算関数の導入について紹介します。一定の基準値がありますので、みんなに共有します。困っている友達は参考にしてください。

ゲーム開発では、確率を計算するシナリオへ
次のコードは、指定された確率に基づいてランダムな結果を計算する最も単純な例です

<?php
//a出现的概率是10%,b是20%,c是30%,d是40%
$pro = [
&#39;a&#39; =>10,
&#39;b&#39; =>20,
&#39;c&#39; =>30,
&#39;d&#39; =>40
];

function proRand($pro)
{
        $ret = &#39;&#39;;
        $sum = array_sum($pro);
        foreach($pro as $k=>$v)
        {   
                $r = mt_rand(1, $sum);
                //echo $r . "\t" . $v . "\n";
                if($r <= $v) 
                {   
                        $ret = $k; 
                        break;
                }else{
                        $sum = max(0, $sum - $v);
                }   
        }   
        return $ret;
}
echo proRand($pro);

より複雑な場合は、確率に重みを追加する場合があります。

上記がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

PHP を使用して大きな Excel ファイル データを読み取る方法

#

以上がPHPランダム確率計算関数入門の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。