Re: Coin Toss Sim
- To: mathgroup at smc.vnet.net
- Subject: [mg122409] Re: Coin Toss Sim
- From: Heike Gramberg <heike.gramberg at gmail.com>
- Date: Thu, 27 Oct 2011 06:34:13 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201110262139.RAA00063@smc.vnet.net>
You get a bad count because you're using SetDelayed (:=) to define which has the effect that the r.h.s. of g is reevaluated every time you call g. In this case that means that you generate a new list of coin tosses whenever you call g. So when you call {g,s} you are in fact using a different list to count the heads from the one you output. To solve this you should use Set (=) for defining g instead, e.g. y[n_] := Block[{g, s}, g = RandomChoice[{"head", "tail"}, n]; s = Count[g, "head"]; {g, s}] Heike. On 26 Oct 2011, at 23:39, pooleman133 wrote: > I am new to mathematica and am trying to make a coin flipping simulation however mo code isn't working. When I tell it to count the number of head it gives me a bad count. The code I am using is listed below any help would be greatly appreciated. > > y[n_] := Block[{g, s}, > > > g := RandomChoice[{"head", "tail"}, n]; > s := Count[g, "head"]; > {g, s} > ] >
- References:
- Coin Toss Sim
- From: pooleman133 <poolebc221@gmail.com>
- Coin Toss Sim