温馨提示×

C++ Random库怎样产生随机浮点数

c++
小樊
101
2024-07-21 03:08:04
栏目: 编程语言

在C++中,可以使用std::uniform_real_distribution类来产生随机浮点数。以下是一个简单的示例代码:

#include <iostream>
#include <random>

int main() {
    std::random_device rd; // 获取随机设备
    std::mt19937 gen(rd()); // 使用Mersenne Twister算法生成随机数引擎
    std::uniform_real_distribution<double> dis(0.0, 1.0); // 产生范围在[0.0, 1.0]之间的随机浮点数

    for (int i = 0; i < 5; ++i) {
        double random_num = dis(gen); // 生成随机浮点数
        std::cout << random_num << std::endl;
    }

    return 0;
}

在上面的代码中,首先使用std::random_device来获取一个随机设备,然后使用std::mt19937生成随机数引擎。接着使用std::uniform_real_distribution来定义一个范围在[0.0, 1.0]之间的随机浮点数分布。最后在循环中使用dis(gen)来生成随机浮点数。运行上面的代码输出如下:

0.0799193
0.730919
0.205962
0.674445
0.666716

0