怎么样产生正态分布,泊松分布,负指数分布的随机函数
问题描述:
怎么样产生正态分布,泊松分布,负指数分布的随机函数
答
return v;}
float poissn(float la) //poissn()产生泊松分布随机数{int k=0;
float b,t=1.0f,r;
b=exp(-la);
while((t-b)> =0){r=Drand();t=t*r;k=k+1;}return k;}
float pgauss(float k,float j) //pgauss()产生正态分布随机数{float v1,v2,s,w,y,sg[2];
do{v1=Drand();
v2=Drand();
s=v1*v1+v2*v2;}while(s> =1);
w=sqrt(-2.0*log(s)/s);
sg[0]=v1*w;
sg[1]=v2*w;
y=k*(sg[0]+sg[1])/2+j;