如何用C++产生随机数

如题所述

方法有两种:

1、C/C++模式的随机数生成函数:(需要srand(time(NULL)设置随机数种子)

int randNum(int rangeMin,int rangeMax)
{
 return static_cast<double>(rand())/(RAND_MAX+1)*(rangeMax-rangeMin+1)+rangeMin 
}
void main()
{
srand(time(NULL));//随机数种子,头文件
 vector<int> vecT;
 for(int i=0;i!=30;i++)
  vecT.push_back(randNum(1,30));
}

2、C++11模式的随机数生成函数:

int myRander(int min,int max)
{
 random_device rd;
 mt19937 eng(rd());
 uniform_int_distribution<int> dist(min,max);
 return dist(eng);
}

温馨提示:答案为网友推荐,仅供参考
相似回答