C++ Bc. 34
Mariáš - podmíněná pravděpodobnost
32 promíchaných karet bylo rozdáno tak, že já mám 12 karet a moji dva protihráči každý 10 (tj. v mariáši jsem vylicitoval talón). Jaká je pravděpodobnost, že zbylé čtyři trumfy drží všechny v ruce jeden z protihráčů.
Označme si jevy
- {mám 4 trumfy}
- {protihráč I má 4 trumfy a protihráč II má 0 trumfů nebo naopak}
Matematická statistika, Přednášky pro PřF UK, Michal Kulich, 2006
Zadání
Napište simulační program, který odhadne požadovanou pravděpodobnost.
Pro generování rovnoměrného rozdělení čísel z intervalu <0,1) použijte výraz
rand()/(RAND_MAX + 1.0)
kde funkce rand() a konstanta RAND_MAX jsou definovány v knihovně <cstdlib>. Aby program poskytoval při každém volání jinou simulaci, inicializujte generátor pseudonáhodných čísel voláním
srand(time(0));
kde funkce time() je definována v knihovně <ctime>.
Poznámka: základ programu tvoří zamíchání karet před každým rozdáním, tj. výpočet náhodné permutace.
Příklad simulace
1 : 0.0870 ~ 0.0871 0.0871 2 : 0.0870 ~ 0.0861 0.0866 3 : 0.0870 ~ 0.0862 0.0865 4 : 0.0870 ~ 0.0878 0.0868 5 : 0.0870 ~ 0.0867 0.0868 6 : 0.0870 ~ 0.0870 0.0868 7 : 0.0870 ~ 0.0871 0.0869 8 : 0.0870 ~ 0.0878 0.0870 9 : 0.0870 ~ 0.0884 0.0871 10 : 0.0870 ~ 0.0844 0.0869