如何轻松生成伪随机数?

How to generate pseudorandom no. easily?

本文关键字:随机数 何轻松      更新时间:2023-10-16

我正在使用seedsrand()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