21xrx.com
2024-12-26 02:47:23 Thursday
登录
文章检索 我的文章 写文章
C++如何获取随机小数
2023-07-11 12:39:52 深夜i     --     --
C++ 随机 小数 获取

C ++ 是一个强大的编程语言,可以用于各种不同类型的项目。在某些项目中,您可能需要生成随机小数。这篇文章将向您介绍如何获取随机小数。

在 C ++ 中,有两种主要的方式可以生成随机数。一种是使用 rand 函数,另一种是使用随机数生成器类。让我们逐一介绍一下这两种方法。

1. 使用 rand 函数

rand 函数是 C ++ 中最基本的随机数生成器之一。它生成一个介于 0 和 RAND_MAX 之间的随机整数。要生成随机小数,您需要将生成的整数除以一个最大值。

下面是一个使用 rand 函数生成随机小数的示例代码:


#include <iostream>

#include <cstdlib>

#include <ctime>

int main()

{

  srand(time(0));

  double random = ((double) rand()) / (double) RAND_MAX;

  std::cout << "Random decimal: " << random << std::endl;

  return 0;

}

上面的代码中,srand (time (0)) 函数确保生成的随机数每次都是不同的。然后,将生成的整数转换为 double 类型,并除以 RAND_MAX。最后,将得到一个介于 0 和 1 之间的随机小数。

2. 使用随机数生成器类

C ++ 中有一个名为 "随机数生成器" 的类。这个类有一些更强大的随机数生成函数,可以生成更多类型的随机数。

下面是一个使用随机数生成器类生成随机小数的示例代码:


#include <iostream>

#include <random>

int main()

{

  std::random_device rd;

  std::mt19937 gen(rd());

  std::uniform_real_distribution<> dis(0, 1);

  double random = dis(gen);

  std::cout << "Random decimal: " << random << std::endl;

  return 0;

}

上面的代码中,std::random_device 用于生成真正的随机数种子。然后,我们使用 std::mt19937 类创建随机数生成器。接下来,我们使用 std::uniform_real_distribution<> 类指定范围(这里是 0 和 1),然后创建一个在该范围内生成随机小数的变量。

总之,这两种方法都可以用于在 C ++ 中生成随机小数。rand 函数是最基本的方法,而随机数生成器类可以更精确地控制随机数的生成方式。无论您选择哪种方法,确保您使用好的随机数生成方式,以满足您的项目需要。

  
  

评论区

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