假如一个抽奖如下信息
int w_list[5] = { 20, 10, 40, 15, 15 };
string names[5] = { "电饭锅", "牙刷", "挨粪叉", "pier子", "蒸馍" };
对应权值 电饭锅–>20,牙刷–>10 以此类推,可见抽到挨粪叉的概率即权值最大
用C++ 实现
先或得随机数
1. 初始化随机数发生器
用法: void srand(unsigned int seed)
所在头文件: stdlib.h
srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。

该博客介绍了一个使用C++实现的基于权重的随机数抽奖系统。通过初始化随机数生成器,获取0到权重和之间的随机数,并通过比较权重来确定中奖奖项。示例中展示了电饭锅、牙刷等不同奖项及其对应的权重,强调了随机数生成的随机性和权重对概率的影响。
最低0.47元/天 解锁文章
806

被折叠的 条评论
为什么被折叠?



