本篇内容介绍了“如何实现c++数值均匀分布”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
#包含 <c标准库>
#包含 <io流>
#包含 <c时间>
整 主()
{
随机种(时间(空针)); // 以当前时间为随机生成器的种子
整 随机变量 = 标::随机();
输出 << "随机 值 on [0 " << 最大随机 << "]: "
<< 随机变量 << '\n';
// 扔 6 面色子 20 次
对 (整 n = 0; n != 20; ++n) {
整 x = 7;
当(x > 6)
x = 1 + 标::随机() / ((最大随机 + 1u) / 6); // 注意: 1 + 随机() % 6 有偏差!
输出 << x << ' ';
}
}
随机 值 on [0 2147483647]: 726295113
6 3 6 2 6 5 6 3 1 1 1 6 6 6 4 1 3 6 4 2
#包含 <io流>
#包含 <串>
#包含 <映射>
#包含 <随机>
整 主()
{
标::随机设备 读;
映射<整, 整> 历史;
均一整分布<整> 分布(0, 9);
对 (整 n = 0; n < 20000; ++n) {
++历史[分布(读)]; // 注意:仅演示:一旦熵池耗尽,
// 许多 随机设备 的实现就急剧下滑
// 对于实践使用, 随机设备 通常仅用于
// 播种如 mt19937 的 伪随机
}
对 (动 p : 历史) {
输出 << p.第一 << " : " << 串(p.第二/100, '*') << '\n';
}
}
0 : ********************
1 : *******************
2 : ********************
3 : ********************
4 : ********************
5 : *******************
6 : ********************
7 : ********************
8 : *******************
9 : ********************
“如何实现c++数值均匀分布”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。