📌  相关文章
📜  具有示例的C++中的std :: uniform_real_distribution b()方法(1)

📅  最后修改于: 2023-12-03 14:50:07.860000             🧑  作者: Mango

std::uniform_real_distribution类介绍

std::uniform_real_distribution是C++标准库提供的一个随机数分布类,用于生成指定范围内的均匀分布的随机浮点数。本文将介绍std::uniform_real_distribution的用法,并提供一个代码示例。

1. 包含头文件

在使用std::uniform_real_distribution之前,我们需要包含以下头文件:

#include <random>
2. 创建随机数引擎

随机数引擎用于生成随机数的种子。我们可以使用std::default_random_engine来创建一个默认的随机数引擎,代码如下:

std::default_random_engine generator;
3. 创建分布对象

接下来,我们需要创建一个std::uniform_real_distribution对象,并指定所需的随机数范围。以下是创建一个分布对象的示例代码:

std::uniform_real_distribution<double> distribution(0.0, 1.0);

上面的代码创建了一个从0.0到1.0之间的均匀分布的随机数分布对象。

4. 生成随机数

通过调用分布对象的operator()成员函数,我们可以生成均匀分布的随机浮点数。示例代码如下:

double random_number = distribution(generator);

distribution(generator)将生成一个指定范围内的随机浮点数,并将其赋值给random_number变量。

示例代码

下面是一个完整的示例代码,展示了如何使用std::uniform_real_distribution生成一组随机浮点数:

#include <iostream>
#include <random>

int main() {
    std::default_random_engine generator;
    std::uniform_real_distribution<double> distribution(0.0, 1.0);

    for (int i = 0; i < 10; ++i) {
        double random_number = distribution(generator);
        std::cout << random_number << std::endl;
    }

    return 0;
}

以上代码将生成10个0.0到1.0之间的随机浮点数,并将其输出到控制台。

希望这个介绍能够帮助你了解和使用std::uniform_real_distribution。详细内容请参考C++标准库文档