[ create a new paste ] login | about

Link: http://codepad.org/equkyn2h    [ raw code | output | fork ]

C, pasted on Oct 29:
#include <stdio.h>
#include <stdlib.h>
#define P 0.4
#define SEED 31415926
#define M 50
#define N 100000

double f(void) {
  int i;
  double s;
  s = 0.0;
  for (i = 0; i < M; i++)
    if ((double)rand() / RAND_MAX < P)
      s += 1.0 / M;
  return s;
}

#define L 24
#define A 500
int main() {
  static int t[L];
  int i, j;
  srand(SEED);
  for (i = 0; i < N; i++)
    t[(int)(f() * L)]++;
  for (i = 0; i < L; i++) {
    printf("%3.2f ", (double)i / L);
    for (j = 0; j < t[i] / A; j++)
      putchar('*');
    putchar('\n');
  }
  return 0;
}
/* end */


Output:
0.00 
0.04 
0.08 
0.12 
0.17 
0.21 **
0.25 ********
0.29 ********************
0.33 ************************************
0.38 ********************************************
0.42 ****************************************
0.46 **************************
0.50 ****************
0.54 **
0.58 
0.62 
0.67 
0.71 
0.75 
0.79 
0.83 
0.88 
0.92 
0.96 


Create a new paste based on this one


Comments: