我正在尝试构建一种概率算法,根据这些概率为用户提供奖励。1 $ - 60%2 $ - 25%5 $ - 12%10 $ - 1.99%50 $ - 1%500 $ - 0.01%我怎样才能做到这一点?你能给我一些代码示例吗?任何帮助表示赞赏!
1 回答
开心每一天1111
TA贡献1836条经验 获得超13个赞
您可以在此处使用该rand功能。将所有概率乘以 100,以便能够使用积分类型,其总和为 10000。生成 1 到 10000 之间的随机数。现在,如果随机数介于 1 和 10000 之间,则概率为 60% 、1 和 6000,奖励为 1 美元,其他概率依此类推。
<?php
function reward() {
$random = rand(1, 10000);
if($random >= 1 && $random <= 6000) {
$reward = 1;
} else if($random > 6000 && $random <= 8500) {
$reward = 2;
} else if($random > 8500 && $random <= 9700) {
$reward = 5;
} else if($random > 9700 && $random <= 9899) {
$reward = 10;
} else if($random > 9899 && $random <= 9999) {
$reward = 50;
} else {
$reward = 500;
}
return $reward;
}
echo reward();
?>
- 1 回答
- 0 关注
- 67 浏览
添加回答
举报
0/150
提交
取消