永发信息网

c++怎么产生1~100岁随机数啊 求解

答案:2  悬赏:80  手机版
解决时间 2021-04-04 07:40
c++怎么产生1~100岁随机数啊 求解
最佳答案
c++ 11 可扩展的随机数功能[编辑]
C 标准库允许使用rand函数来生成伪随机数。不过其算法则取决于各程序库开发者。 C++ 直接从 C 继承了这部份,但是 C++11 将会提供产生伪乱数的新方法。
C++11 的随机数功能分为两部分: 第一,一个乱数生成引擎,其中包含该生成引擎的状态,用来产生乱数。第二,一个分布,这可以用来决定产生乱数的范围,也可以决定以何种分布方式产生乱数。乱数生成对象即是由乱数生成引擎和分布所构成。
不同于 C 标准库的 rand; 针对产生乱数的机制,C++11 将会提供三种算法,每一种算法都有其强项和弱项:
C++11 将会提供一些标准分布: uniform_int_distribution (离散型均匀分布),bernoulli_distribution (伯努利分布),geometric_distribution (几何分布), poisson_distribution (卜瓦松分布),binomial_distribution (二项分布),uniform_real_distribution (离散型均匀分布), exponential_distribution (指数分布),normal_distribution (正态分布) 和 gamma_distribution (伽玛分布)。
底下描述一个乱数生成对象如何由乱数生成引擎和分布构成:
std::uniform_int_distribution distribution(0, 99); // 以离散型均匀分布方式产生 int 乱数,范围落在 0 到 99 之间
std::mt19937 engine; // 建立乱数生成引擎
auto generator = std::bind(distribution, engine); // 利用 bind 将乱数生成引擎和分布组合成一个乱数生成物件
int random = generator(); // 产生乱数
全部回答
用下面两句。需加上相关包含文件。
int s;
srand((unsigned)time(NULL));
s=rand()%100+1;
s就符合你要求的随机数。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
《雪在烧》演员表?
单选题从经济角度看,秦始皇统一中国最大的作
3x减1时4的差+x=55x等于多少
如何辨别办公高隔墙好坏
祝爱人生日祝福语大全,今天是自己的生日,求
兰州――广州火车票查询
哈尔滨从安升街(新阳路到口)或抚顺街到哈平
“一个国家、一个民族或一个地区的经济强弱是
真命天子命是什么意思,真命天子是什么意思
OPPOA33m和OPPOA33那个好。
我想学二胡,请问难吗,一把二胡大概要多少钱
这两字念什么?
钱多多农场是什么
房彦谦传阅读答案
安全邮箱是什么意思,发送,抄送和密送有什么
推荐资讯
选词填空最恰当的一项是(1)也许你们心上的
佐助何时才能放下仇恨和小樱一起神雕侠侣
阅读下列材料:材料一 中国近代史上,义和团
成语文字优美,有的还是历史故事的代名词。依
武装炼金结局最后的日语是什么意思,我要的是
Dream...Dream when the day is through. Dre
看了叶问3预告片里的李小龙,看见好像不是cg
莫沫南路奶茶店有没有网红脏脏奶?
以“雷”字为单位取个广告公司名字 请大家给
所谓的前戏是什么?
让人猜可以怎么说的有趣一些
想要一个张姓四字名字
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?