dr.jekyllandme has asked for the wisdom of the Perl Monks concerning the following question:
Hello,
I have a simple script that simulates a coin toss. I define an array with strings "heads" and "tails" and use rand to choose between these two strings.
My question is, is this actually random? Is there an equal percentage of choosing either value. I notice that it is very rare for me to get 5 heads and 5 tails. It could be that I am only tossing coins 10 times, is that too small? Is there a better way to do this? Thank you.#!usr/bin/perl use strict; use warnings; my %probs; foreach( 1..10 ) { print "Coin toss $_\n"; my $value = &coin_toss; $probs{ $value }++; print "Value = $value\n\n"; } print "Total Heads = $probs{ heads }\n"; print "Total Tails = $probs{ tails }\n"; sub coin_toss { my @coin = qw( heads tails ); my $index = rand @coin; return $coin[ $index ]; }
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Is this really random?
by Athanasius (Archbishop) on Nov 22, 2012 at 04:45 UTC | |
by Jenda (Abbot) on Nov 22, 2012 at 15:19 UTC | |
by tobyink (Canon) on Nov 22, 2012 at 15:47 UTC | |
Re: Is this really random?
by muba (Priest) on Nov 22, 2012 at 03:11 UTC | |
Re: Is this really random?
by 2teez (Vicar) on Nov 22, 2012 at 03:37 UTC | |
by karlgoethebier (Abbot) on Nov 22, 2012 at 18:30 UTC | |
Re: Is this really random?
by ColonelPanic (Friar) on Nov 22, 2012 at 08:39 UTC | |
Re: Is this really random?
by aitap (Curate) on Nov 22, 2012 at 17:47 UTC |
Back to
Seekers of Perl Wisdom