/****************************************************************/ /*** Linear congruential generator ***/ /*** Rechnergestütztes Wissenschaftliches Rechnen ***/ /*** University of Goettingen, Germany 2004 ***/ /****************************************************************/ #include #include #include #define NUM_BINS 100 int main(int argc, char *argv[]) { int a, c, m, I; /* parameter of random-number generator */ double number; /* generated number */ double number_old; /* store previous number */ int num_runs; /* number of generated random numbers */ int histo[NUM_BINS]; /* histogram to measure distribution */ double start_histo, end_histo; /* range of histogram */ double delta; /* width of bin */ int bin; int t; /* loop counter */ m = 32768; c = 1; I = 1002; number_old = I/m; sscanf(argv[1], "%d", &num_runs); /* read parameters */ sscanf(argv[2], "%d", &a); for(t=0; t= 0)&&(bin < NUM_BINS)) /* inside range ? */ histo[bin]++; /* count event */ number_old = number; } /* return(0); */ /* uncomment for correlation */ for(t=0; t