如何轻松生成伪随机数?
How to generate pseudorandom no. easily?
我正在使用seed
和srand()
或random()
等函数从0 to 5
生成数字,但我需要一种更简单的方法,通过输入数组也可以轻松找到seed
。请建议一个
下面是一个简单的示例,它生成 -42 到 42 范围内的 10 个均匀分布的随机数:
#include <iostream>
#include <functional>
#include <random>
int main()
{
std::random_device seed_device;
std::mt19937 engine(seed_device());
std::uniform_int_distribution<int> distribution(-42, 42);
auto rnd = std::bind(distribution, std::ref(engine));
for (int i = 0; i < 10; ++i) {
std::cout << "random number: " << rnd() << "n";
}
return 0;
}
另请参阅:
http://en.cppreference.com/w/cpp/header/random
相关文章:
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 整数不会重复超过随机数
- 函数何时会在c++中包含stack_Unwind_Resume调用
- Python中的for循环与C++有何不同
- if数组上的随机数
- 在将数字随机生成为数组期间从内存输出随机数的数组
- 半随机数生成C++
- 程序在尝试猜测它选择的随机数时进入无限循环?
- 有没有办法在 c++ 中同时生成随机数?如果没有,是否有解决方法?
- 具有随机数的二维数组不会更改
- 随机数未达到限制
- 我想生成许多矩阵并用随机数填充它
- <random>在实践中应该实际使用哪个随机数引擎? std::mt19937?
- 在C++中释放内存期间,迭代器与指针有何不同
- 制作具有平均值的随机数生成器
- 为什么 rand 不在我的代码中生成随机数?
- C++ 随机数生成器:尝试将结果作为向量获取,但通过制作 void 函数来执行此操作而出现错误
- 从给定种子生成相同的随机数序列C++
- 随机数生成函数说明
- 如何轻松生成伪随机数?