很多站长朋友们都不太清楚PHP程序概率补一,今天小编就来给大家整理PHP程序概率补一,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php生成随机数,1-15之间,2出现的概率是80% 然后其它数字出现的概率是10% 2、 php实现可以设置中奖概率的抽奖程序代码分享 3、 php 如何随机生成指定数字和概率? 4、 PHP怎么给数组中的值赋予一个出现的概率?跪求高手解答!!! php生成随机数,1-15之间,2出现的概率是80% 然后其它数字出现的概率是10%$rand = 0; // 定义rank随机变量
if(mt_rand(1,100) <= 80) { // 控制2出现的概率为80%
$rand = 2;
} else { // 剩余数字的概率为20%
$rand = mt_rand(2,15); // 排除掉2号位置,用1去补2号位
if($rand == 2) { // 当随机到2号位,则用1去补2号
$rand = 1;
}
}
echo $rand; // 输出结果
php实现可以设置中奖概率的抽奖程序代码分享这篇文章主要介绍了一个抽奖程序,要求一等奖的中奖概率是0.12%,二等奖中奖概率是3%,三等奖中奖概率是12%,其他中奖概率是都是谢谢惠顾
代码如下:
<?php
/**
*
抽奖
*
@param
int
$total
*/
function
getReward($total=1000)
{
$win1
=
floor((0.12*$total)/100);
$win2
=
floor((3*$total)/100);
$win3
=
floor((12*$total)/100);
$other
=
$total-$win1-$win2-$win3;
$return
=
array();
for
($i=0;$i<$win1;$i++)
{
$return[]
=
1;
}
for
($j=0;$j<$win2;$j++)
{
$return[]
=
2;
}
for
($m=0;$m<$win3;$m++)
{
$return[]
=
3;
}
for
($n=0;$n<$other;$n++)
{
$return[]
=
'谢谢惠顾';
}
shuffle($return);
return
$return[array_rand($return)];
}
$data
=
getReward();
echo
$data;
?>
php 如何随机生成指定数字和概率?亲,你可以这样做呦!~~
如果只有这三个数,是不好弄出 0:85% 1:5% 2:10%的
但是你如果想提高某个数字出现的概率,你可以适当让这个数组增多。
你可以这样写:
<?php
// 定义一个数组,里面有85个0
$num0 = array_fill(0, 85, 0);
// 定义一个数组,里面有5个1
$num1 = array_fill(1, 5, 1);
// 定义一个数组,里面有10个2
$num2 = array_fill(2, 10, 2);
// 总数组,里面总共100个元素
$allNum = array_merge($num0, $num1, $num2);
// 随机取一个元素
$randKey = array_rand($allNum);
$randnum = $allNum[$randKey];
// 以上就可以实现出现0的概率是85% 出现1的概率是5% 出现2的概率是10%了,因为一共一百个数,里面有85个是0, 5个是1, 10个是2
希望可以帮到你呦!~如果有不正确的地方,欢迎指正!~~
本人博客: ,欢迎交流学习!~~
PHP怎么给数组中的值赋予一个出现的概率?跪求高手解答!!!rand()随机数函数
$r = rand(1,100);//1-100的随机数
if($r > 60){ //40%概率
echo a[i];
}
关于PHP程序概率补一的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于PHP程序概率补一 编写php程序产生一个随机数的详细内容...