21xrx.com
2024-06-03 07:11:18 Monday
登录
文章检索 我的文章 写文章
C++生成13或15的随机值
2023-06-26 01:25:33 深夜i     --     --
C++ 生成 随机值 13 15

在C++中,生成随机数可以使用rand()函数。在给定范围内生成随机数时,我们可以使用取模运算和偏移量来实现这一目的。

假设我们希望随机生成13到15之间的数,我们可以按照以下步骤操作:

1. 使用rand()函数生成一个0到RAND_MAX(通常是32767)之间的随机数n。

2. 计算n对13取模的余数,即n%13。

3. 如果余数小于3(即n%13<3),将结果加上13,否则直接返回余数。

这样就可以保证生成的数在13到15之间。

以下是具体的代码实现:


#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

int main()

{

  srand(time(0)); // 设置种子值,使用当前时间作为种子

  int randNum = rand(); // 生成0到RAND_MAX之间的随机数

  int num = randNum % 13; // 对13取模,得到0到12之间的值

  if (num < 3) {

    cout << num + 13 << endl; // 如果小于3,加上13

  } else

    cout << num << endl;

  

  return 0;

}

以上代码中使用了srand()函数来设置随机数种子,以保证每次运行程序都会生成不同的随机数。如果不设置种子值,每次运行程序都会生成相同的随机数序列。

需要注意的是,rand()函数生成的随机数并不是真正的随机数,而是伪随机数。它们是依据一定的算法生成的,如果不设置种子值,每次生成的数列都是相同的。因此,在实际应用中,需要使用更加严格的随机数生成算法来保证随机性。

  
  

评论区

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