Jump to content

Sleeping Beauty problem: Difference between revisions

Added C++ solution
(Add Factor)
(Added C++ solution)
Line 31:
 
 
 
=={{header|C++}}==
<lang cpp>#include <iostream>
#include <random>
 
int main() {
std::cout.imbue(std::locale(""));
const int experiments = 1000000;
std::random_device dev;
std::default_random_engine engine(dev());
std::uniform_int_distribution<int> distribution(0, 1);
int heads = 0, wakenings = 0;
for (int i = 0; i < experiments; ++i) {
++wakenings;
switch (distribution(engine)) {
case 0: // heads
++heads;
break;
case 1: // tails
++wakenings;
break;
}
}
std::cout << "Wakenings over " << experiments
<< " experiments: " << wakenings << '\n';
std::cout << "Sleeping Beauty should estimate a credence of: "
<< double(heads) / wakenings << '\n';
}</lang>
 
{{out}}
<pre>
Wakenings over 1,000,000 experiments: 1,500,090
Sleeping Beauty should estimate a credence of: 0.333253
</pre>
 
=={{header|Factor}}==
1,777

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.