c++宏定义产生有范围的随机数random(n,m)
#include <stdlib.h>
#define random(m,n) (rand()%(n-m+1)+m)
C++的随机数函数为rand(), 可以获得一个非负整数的随机数。
要让随机数限定在一个范围,可以采用模除加加法的方式。
要产生随机数r, 其范围为 m<=r<=n,可以使用如下公式:
rand()%(n-m+1)+m
其原理为,对于任意数,
0<=rand()%(n-m+1)<=n-m
于是
0+m<=rand()%(n-m+1)+m<=n-m+m
即
m<=rand()%(n-m+1)+m<=n
c++宏定义产生有范围的随机数random(n,m)
最新推荐文章于 2023-09-21 17:46:20 发布