21xrx.com
2024-09-19 10:06:38 Thursday
登录
文章检索 我的文章 写文章
C++中随机数(random)
2023-07-04 02:50:51 深夜i     --     --
C++ 随机数 生成 范围 种子

C++ 是一种非常流行的编程语言,广泛应用于各种领域,包括游戏开发、金融分析、机器学习等。其中,随机数(random)是 C++ 中常用的一个功能,用来生成伪随机数。

在 C++ 中,我们可以使用标准库中的 ` ` 头文件来生成随机数。该头文件提供了多种随机数引擎和分布函数:

- 随机数引擎:用来生成随机数的核心算法,包括 `default_random_engine`、`mt19937`、`minstd_rand0` 等。

- 分布函数:用来指定随机数的取值范围和概率分布,包括 `uniform_int_distribution`、`normal_distribution`、`exponential_distribution` 等。

下面是一个简单的例子,用来生成一个介于1和10之间的随机整数:


#include <iostream>

#include <random>

int main()

{

  std::random_device rd;

  std::mt19937 gen(rd());

  std::uniform_int_distribution<> dis(1, 10);

  std::cout << "Random number: " << dis(gen) << std::endl;

  return 0;

}

在上面的代码中,我们使用了 `random_device` 来获取一个随机种子,然后使用 `mt19937` 来作为随机数引擎,最后使用 `uniform_int_distribution` 来指定取值范围。通过调用 `dis(gen)`,我们可以生成一个介于1和10之间的随机整数。

值得注意的是,随机数是“伪随机数”,也就是说,它们是由计算机根据某种算法生成的,并不是真正的随机数。因此,在某些情况下,可能需要采取一些措施,以保证生成的随机数具有足够的随机性。

总之,C++ 中的随机数功能非常强大,可以应用于很多领域。掌握好使用方法,可以帮助我们更好地开发和优化代码。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复