Záminka k tomuto pokusu, byla docela jednoduchá – hodil jsem si s kamarádem, kdo z nás provede náš šílený plán. (Jen pro zajímavost – já to nebyl :-)). Když jsem večer přemýšlel nad tím, jaké jsem to měl vlastně štěstí, napadlo mě, zda bych byl schopný vyhrát i příště a že by to bylo docela zajímavé, kdyby se i to pravdu povedlo. To už bych se pak nemusel podobných sázek bát.
Snažil jsem se, abych na internetu našel nějaký výzkum, který tuhle tu problematiku vysvětluje. Bohužel jsem nenašel nic, co by mělo jasnou odpověď – asi to je příliš bizardní nebo odpověď na tuto otázku prostě jen neexistuje.
Proto jsem vytvořil jednoduchý skript, který by mi tento problém pomohl objasnit. Princip je následující: Aplikace vypíše určený počet náhodných čísel v intervalu <0, 1>. K nule můžu přiřadit rub a k jedničce naopak líc. (V tomto ohledu by mohl být jediný zádrhel pokusu – co je rub a líc? Jednička nebo nula?!)
Kód aplikace:
Random rnd = new Random(); int rub = 0; int líc = 0; for (int pokusy = 0; pokusy <= 9999; pokusy++) { if (rnd.Next(0, 2) == 1) { Console.Write("1"); líc++; } else { Console.Write("0"); rub++; } }
Z deseti pokusů se ukázalo, že náhoda je spravedlivá!
Z deseti testů, jenž každý vygeneroval 10 000 náhodných čísel, vyplynulo, že vítězem se stal pětkrát líc a pětkrát rub. Vezmu-li ale v úvahu všechny nuly(neboli ruby) a sečtu je, pak jsou jasným vítězem s rozdílem 172 čísel. Pro zajímavost (a asi i z nudy) jsem udělal ještě dva pokusy, kdy jsem v každém vygeneroval deset milionů čísel. Samozřejmě každý z těchto pokusů trval mnohem déle (řádově již v minutách). I teď se ukázalo, že náhoda je spravedlivá a v jednom testu vyhrál rub a v druhém líc.