21xrx.com
2024-11-22 09:58:31 Friday
登录
文章检索 我的文章 写文章
C++随机数生成及范围限定
2023-06-22 20:41:14 深夜i     --     --
C++ 随机数生成 范围限定

在C++编程中,经常会用到随机数生成,例如游戏中的随机生成地图、随机生成怪物等等。而生成的随机数一般会限定在一定的范围内,本文将介绍C++如何实现随机数生成以及如何限定范围。

一、随机数生成

C++中的随机数生成函数为rand(),其生成的随机数是一个整数,并不是真正的随机数,而是伪随机数。为了使得每次生成的随机数不同,需要利用srand()函数,设置随机数生成器的种子。种子可以设置为当前时间,如下所示:


srand(time(NULL));

接下来调用rand()函数即可生成一个随机整数。但是由于随机数是伪随机数,因此生成的随机数可能会出现重复的情况。

二、限定范围

为了避免出现重复的情况,我们可以通过对生成的随机数进行范围限制。例如,我们需要生成1到100之间的随机整数,可以使用下面的代码:


int num = rand() % 100 + 1;

其中“% 100”表示取1到100之间的余数,加上1后就可以得到1到100之间的随机整数。

如果需要生成的是一个浮点数,我们可以利用rand()生成0到RAND_MAX(一般为32767)之间的数,然后将其除以RAND_MAX,并加上要生成的浮点数的最小值,即可得到所需要的浮点数。

三、总结

C++中的随机数生成函数可以通过利用srand()函数设置种子来避免生成重复的随机数。为了限定随机数的范围,我们可以利用%运算来实现取余数,并加上所需的最小值来得到所需要的随机数。在编程过程中,利用随机数生成器可以实现很多有趣的功能,并且在游戏开发中也得到广泛应用。

  
  

评论区

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