我现在做了一个抽奖的练习,但是到计算奖品概率的时候我纠结了,比如说一等奖抽中概率为10%,,二等奖为30%,... 依次,想了几种方法都不合适,有没有哪位大神给个思路啊
------解决方案--------------------
这个感觉要去复习下数学的概率,就清楚了
------解决方案--------------------
math.rand()生成0-1的小数,乘以奖票的总数,判断得到的数字是几等奖就好了! (当一等奖被抽完的话,一等奖概率就是零了,概率是动态的)
------解决方案--------------------
那你定义一个10位的数组,然后随机取出一个,定义一等奖为其中的1个数字,二等奖为其中的3个数字依次类推
------解决方案--------------------
int a[10];
a[0] =1
a[1] =2
a[2]=2
a[3]=2;
a[...]=0;
total = 10;
{int rd = random()%total
a[rd] 看得奖情况
a[rd] = a[total-1]
total--;
}
循环上面的过程就可以了