随机数发生器

         一个随机数发生器uniform()。首先有srand(time(0))来设置种子,所需要的头文件为stdlib.h和time.h。然后随机数发生器uniform()为:

double uniform(int a, int b)
{
  double rv;
  rv = ((double)(rand() * (b-a)) / (double)(RAND_MAX)) + a * 1.0;
  return rv;
}

   则当a=0,b=4时,则返回的rv为负数,并不在a~b区间。而修改为:

double uniform(double a, double b)
{
  double rv;
  rv = ((double)(rand() * (b-a)) / (double)(RAND_MAX)) + a * 1.0;
  return rv;

}

     则返回的rv在a~b区间。

 

你可能感兴趣的:(随机数发生器)