Sleeping Beauty problem: Difference between revisions

Content added Content deleted
(Added C++ solution)
(Added Wren)
Line 161: Line 161:
Wakenings over 1000000 experiments: 1499765
Wakenings over 1000000 experiments: 1499765
Results of experiment: Sleeping Beauty should estimate a credence of: 0.333542254953276
Results of experiment: Sleeping Beauty should estimate a credence of: 0.333542254953276
</pre>

=={{header|Wren}}==
{{libheader|Wren-fmt}}
<lang ecmascript>import "random" for Random
import "/fmt" for Fmt

var rand = Random.new()

var sleepingBeauty = Fn.new { |reps|
var wakings = 0
var heads = 0
for (i in 0...reps) {
var coin = rand.int(2) // heads = 0, tails = 1 say
wakings = wakings + 1
if (coin == 0) {
heads = heads + 1
} else {
wakings = wakings + 1
}
}
Fmt.print("Wakings over $,d repetitions = $,d", reps, wakings)
return heads/wakings * 100
}

var pc = sleepingBeauty.call(1e6)
Fmt.print("Percentage probability of heads on waking = $f\%", pc)</lang>

{{out}}
Sample run:
<pre>
Wakings over 1,000,000 repetitions = 1,500,321
Percentage probability of heads on waking = 33.304806%
</pre>
</pre>