?? guass_0_1.cpp
字號:
//GAUSS(0,1)
#include <stdio.h>
#include <math.h>
#define n (pow(2,31)-1)
void u(double m,double b[9000]) //產生均勻分布
{
int i;
double z[9000];
z[0]=m;
for(i=1;i<9000;i++)
{ z[i]=fmod((16807*z[i-1]),n);
b[i]=z[i]/n;
}
b[0]=m/n;
}
void main()
{
double a[12][9000];
double x[9000];
FILE *fp;
fp=fopen("guass.txt","w");
int i,j;
float s,k;
printf("Please input the s k:");
scanf("%f,%f",&s,&k);
for(i=0;i<=11;i++) //調用子函數
u(i+9000,a[i]);
for(i=0;i<9000;i++) //產生GAUSS分布
{
x[i]=0;
for(j=0;j<=11;j++)
x[i]+=a[j][i];
x[i]-=6.0;
x[i]=s+k*x[i]/100000000;
printf("%lf\t",x[i]);
fprintf(fp,"%lf\n",x[i]);
}
fclose(fp);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -