Maison  >  Article  >  développement back-end  >  新人、中奖概率问题

新人、中奖概率问题

WBOY
WBOYoriginal
2016-06-20 12:35:03988parcourir

我们公司签到得积分,用积分抽奖,我用下面的方法设定中奖概率,这样会有问题吗
if ( rand(1,10)==1 ) {
        echo "四等级";
}
else if ( rand(1,100)==1 ) {
        echo "三等级";
}
else if ( rand(1,200)==1 ) {
        echo "二等奖";
}
else if ( rand(1,300)==1 ) {
        echo "一等奖";
}
else {
        echo "幸运奖";
}
?>


回复讨论(解决方案)

那么你的
一等奖 抽中概率为 9 /10 * 99/100 * 199/200 * 1/300 = 0.00295515
约为 千分之三,是你预期的吗?

问题是没啥问题,  就是除了   四等级 和幸运奖,  别的奖概率太小了

概率:
0.1    
0.009   
0.00445   
0.0029   
0.883

那么你的
一等奖 抽中概率为 9 /10 * 99/100 * 199/200 * 1/300 = 0.00295515
约为 千分之三,是你预期的吗?

我主要是看这样写有没有问题

问题没有,只要符合你的预期
你要想指定各奖次的概率,就比较麻烦了(算的头发昏)

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:if条件不执行Article suivant:PHP模板+工厂设计模式