
Write a program to simulate 1000 trials, each of which consists of tossing a fair coin 10 times and counting the number of heads. For each n = 0; : : : ; 10, your program should print the proportion of trials resulting in exactly n heads. The output from my program is given below: 0.0000 0.0130 0.0440 0.1249 0.1958 0.2488 0.1868 0.1249 0.0500 0.0100 0.0010 The proportions predicted by probability theory are 0.0010 0.0098 0.0439 0.1172 0.2051 0.2461 0.2051 0.1172 0.0439 0.0098 0.0010 - Import java.util.Random and java.text.DecimalFormat. -Declare static variables private static Random random=new Random(0); private DecimalFormat=new DecimalFormat("0.0000"); - Declare instance variables int[] count and int ntrials, where count[n]=m means exactly m trials have resulted in n heads, and where ntrials is the number of trials. - Declare a constructor Simulator() which initializes count to 11 components, and ntrials to zero. - Declare methods ? int toss(): simulate a single coin toss by returning a random integer in the range 0?1. ? int result(): simulate a trial by calling toss() 10 times and adding the results. ? void simulate(): record the result of one trial by calling result() and updating count and ntrials. ? void simulate(int n): perform n simulations. ? public String toString(): generate a String from the values of count[n]/ntrials for n going from 0 to 10. You will want to do floating-point division, and format the result using format. - Your main program can be: Simulator s=new Simulator(); s.simulate(1000); System.out.println(s);
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.