>>260のをやってみたんだけど
明らかに平均、分散、標準偏差がおかしいんだよね
助けてエロイ人
#include <stdio.h>
#include <math.h>
#define N 20000
int a = 1229, b = 351750, c = 1664501;
int int_rand(int r){ return ((a * r + b) % c); }
double real_rand(int r){ return ((double)r / c); }
int main(void){
int i, j, k, l = 1, r = 1, a[100]={0};
double x, y, e, v, o;
while(l <= 10){
e = 0; v = 0;//初期化
for(i = 0; i < 100; i++) a[i]=0;
for(i = 0; i < N; i++){//乱数発生
r = int_rand(r);
if(i % 2 == 0) x = real_rand(r);
else y = real_rand(r);
if(i % 2 == 1){ j = x * 10, k = y * 10; a[j + k * 10]++; }
}
for(i = 0; i < 100; i++){ e += a[i]; v += pow(a[i], 2); }//平均,分散,標準偏差計算
e /= 100; v /= 100; v -= e; o = sqrt(v);
printf("%d回目:平均=%f 分散=%f 標準偏差%f\n", l, e, v, o);
l++;
}
return 0;
}