⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gauss1.c

📁 生成均匀随机数列算法实现和生成高斯随即序列的两种算法实现
💻 C
字号:
/*   gauss1.c   产生高斯随机数         */

/*由uniform.c产生(0,1)上的n个相互独立的均匀分布随机数,均值为1/2,方差为1/12*/
/*根据中心极限定理,当n较大时近似有Z=sqrt(12/n)*((r1+r2+...+rn)-n/2) ~ N(0,1)*/
/*取n=12,则Z=(r1+r1+..+r12)-6 ~ N(0,1)*/
/*再通过变换X=mean+Z*sigma得到均值为mean方差为sigma^2的高斯分布随机数X*/

#include "uniform.c"

double gauss1(mean,sigma,s)
double mean,sigma;
long int *s;
{
 int i;
 double x,y;
 double uniform();
 for(x=0,i=0;i<12;i++)
   x+=uniform(0.0,1.0,s);
 x=x-6.0;
 y=mean+x*sigma;
 return(y);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -