生成100个随机数利用mt19937
时间: 2024-09-16 09:04:06 浏览: 36
利用Golang生成整数随机数方法示例
在C++中,你可以使用`<random>`库的Mersenne Twister算法(`std::mt19937`)生成100个随机数。这里是一个简单的示例,生成的是范围在[0, 1]之间的均匀分布随机小数:
```cpp
#include <iostream>
#include <random>
int main() {
// 初始化随机数生成器,通常使用当前时间作为种子,以确保每次运行结果不同
unsigned int seed = std::chrono::high_resolution_clock::now().time_since_epoch().count();
std::mt19937 generator(seed);
// 定义随机数的分布,这里是[0, 1)的均匀分布
std::uniform_real_distribution<double> distribution(0.0, 1.0);
// 生成并打印100个随机数
for (int i = 0; i < 100; ++i) {
double random_num = distribution(generator);
std::cout << random_num << " ";
}
return 0;
}
```
上述代码会输出100个0到1之间的随机小数,每个数字之间有间隔,因为它们是独立的均匀分布值。
阅读全文