PHP 趋向中间数的随机数 解释原理
PHP 趋向中间数的随机数使用的是高斯分布(正态分布)的概念,即以一个中心点为基准,随机生成的数值趋向于这个中心点,而离这个中心点越远,生成的概率越小。
具体实现方法是利用 PHP 中的 mt_rand() 函数生成两个随机数,然后将这两个随机数相加除以 2,即可得到一个趋向于这两个随机数中间数的随机数。
例如,生成 1 至 10 之间的趋向于 5 的随机数,可以使用以下代码:
$min = 1;
$max = 10;
$center = 5;
$rand1 = mt_rand($min, $max);
$rand2 = mt_rand($min, $max);
$random = ($rand1 + $rand2) / 2;
$random = round($random); //四舍五入取整
if ($random < $min) {
$random = $min;
} elseif ($random > $max) {
$random = $max;
}
echo $random;
该代码通过 mt_rand() 函数生成两个 1 至 10 的随机数,然后将这两个随机数相加除以 2 得到一个趋向于 5 的随机数,最后通过 round() 函数四舍五入取整保证结果在 1 至 10 之间
原文地址: https://www.cveoy.top/t/topic/fivx 著作权归作者所有。请勿转载和采集!