📜  c++ 0 到 1 之间的随机数 - C++ (1)

📅  最后修改于: 2023-12-03 15:29:49.047000             🧑  作者: Mango

C++生成 0 到 1 之间的随机数

在C++中,可以使用标准库 random 来生成随机数。通过使用 std::uniform_real_distribution 类,我们可以生成 0 到 1 之间的随机数。

代码示例
#include <random>
#include <iostream>

int main()
{
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_real_distribution<> dis(0.0, 1.0);

    double rand_num = dis(gen);

    std::cout << "Random number between 0 and 1: " << rand_num << std::endl;

    return 0;
}
代码解释

首先,我们包含了 randomiostream 标准库。然后,我们创建一个 std::random_device 对象,它用于生成真正的随机数种子。接着,我们创建一个 std::mt19937 对象,它是一个 32 位 Mersenne Twister 引擎,用于产生随机数。最后,我们使用 std::uniform_real_distribution 类来生成 0 到 1 之间的随机数。

我们使用 uniform_real_distribution 类的构造函数来指定随机数的范围。在上面的代码示例中,我们将范围设为 0.0 到 1.0。

然后,我们调用 dis(gen) 来生成随机数。dis 是我们创建的 std::uniform_real_distribution 对象,而 gen 是我们创建的 std::mt19937 对象。通过调用 dis(gen),我们将产生一个 0 到 1 之间的随机数。

最后,我们将随机数打印到控制台上。

总结

通过使用标准库 random,我们可以轻松地在 C++ 中生成随机数。只需创建一个合适的随机数引擎和分布,就可以开始生成随机数了。