Multiple coin toss


If you toss 100 fair coins at once, how many do you expect to be heads? How much variation would you expect? This program implements a Monte Carlo simulation of the statistical properties of the outcome of tosses of many coins. The probability that an individual coin is heads is p.


For each coin we generate a random number r uniformly in the interval [0, 1]. A coin is heads if r ≤ p. We simulate the toss of many coins and plot a histogram of the number of heads found for N tosses and compute the average number of heads and the standard deviation.


  1. Run the simulation for p = 1/2 and N = 10, 100, and 1000 coins. Describe the qualitative dependence of the histogram on the number of coins.
  2. Estimate the width of the histogram. Make a plot of the estimated width versus N. Compare your estimated values to the standard deviation σ, where σ is given by σ2 = <H2> - <H>2. What is the functional form of this dependence? How do the relative fluctuations σ/<H> depend on N? (The quantity <H> is the mean number of heads in one toss.)
  3. Change the probability of obtaining heads in a single toss to p = 0.8. How does the shape of the histogram change?

Java Classes

Updated 28 December 2009.