C++生成随机数:连续均匀分布(uniform distribution)

现在要生成符合[min,max]区间内连续均匀分布(uniform distribution)的一组随机数,方法如下:

#include time.h

首先初始化随机数种子:

srand(iSeed);//iSeed为unsigned int类型

或者:

srand(time(NULL));
double cls_random::randomUniform(
    double dMinValue,
    double dMaxValue)
{
    double pRandomValue = (double)(rand()/(double)RAND_MAX);
    pRandomValue = pRandomValue*(dMaxValue-dMinValue)+dMinValue;
    return pRandomValue;
}

  期望E=(max+min)/2

      方差V=(max-min)*(max-min)/12

wiki: http://zh.wikipedia.org/wiki/%E9%80%A3%E7%BA%8C%E5%9E%8B%E5%9D%87%E5%8B%BB%E5%88%86%E5%B8%83

原文地址:https://www.cnblogs.com/yeahgis/p/2589621.html