#include <iostream>
#include <iomanip>
bool zufallsliste[] = { true, true, false, false, true, false, true, true, true, false, false, true, true, true, false, true, false, false, true, true, false, true, true, true, true, false, true, true, false, false, false, true, true, false, false, false, true, false, false, false, false, false, true, false, false, false, true, true, false, true, true, false };
int wo1 = 0;
int wo2 = 0;
//Gibt mithilfe der obrigen Variablen einen Zufallswert (Bool) zurück.
bool someBool()
{
wo1++;
wo2 += 7;
if (wo1 > 51) { wo1 = 0; }
if (wo2 > 51) { wo2 -= 52; }
std::cout << std::setw(5) << std::boolalpha << zufallsliste[wo1] << " (" << std::setw(2) << wo1 << ") - "
<< std::setw(5) << zufallsliste[wo2] << " (" << std::setw(2) << wo2 << ") --- "
<< std::setw(5) << static_cast<bool>(zufallsliste[wo1] ^ zufallsliste[wo2]) << '\n';
return (zufallsliste[wo1] ^ zufallsliste[wo2]);
}
int main()
{
const int COUNT = 52;
int true_count = 0;
for (int i = 0; i < COUNT; ++i)
{
true_count += someBool() ? 1 : 0;
}
std::cout << "\ntrue: " << true_count << " - false: " << (COUNT - true_count);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KCmJvb2wgenVmYWxsc2xpc3RlW10gPSB7IHRydWUsIHRydWUsIGZhbHNlLCBmYWxzZSwgdHJ1ZSwgZmFsc2UsIHRydWUsIHRydWUsIHRydWUsIGZhbHNlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIHRydWUsIHRydWUsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZSwgZmFsc2UsIHRydWUsIHRydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSB9OwppbnQgd28xID0gMDsKaW50IHdvMiA9IDA7CgovL0dpYnQgbWl0aGlsZmUgZGVyIG9icmlnZW4gVmFyaWFibGVuIGVpbmVuIFp1ZmFsbHN3ZXJ0IChCb29sKSB6dXLDvGNrLgpib29sIHNvbWVCb29sKCkKewogICAgd28xKys7CiAgICB3bzIgKz0gNzsKICAgIGlmICh3bzEgPiA1MSkgeyB3bzEgPSAwOyB9CiAgICBpZiAod28yID4gNTEpIHsgd28yIC09IDUyOyB9CiAgICBzdGQ6OmNvdXQgPDwgc3RkOjpzZXR3KDUpIDw8IHN0ZDo6Ym9vbGFscGhhIDw8IHp1ZmFsbHNsaXN0ZVt3bzFdIDw8ICIgKCIgPDwgc3RkOjpzZXR3KDIpIDw8IHdvMSA8PCAiKSAtICIKICAgICAgICAgICAgICA8PCBzdGQ6OnNldHcoNSkgPDwgenVmYWxsc2xpc3RlW3dvMl0gPDwgIiAoIiA8PCBzdGQ6OnNldHcoMikgPDwgd28yIDw8ICIpIC0tLSAiCiAgICAgICAgICAgICAgPDwgc3RkOjpzZXR3KDUpIDw8ICBzdGF0aWNfY2FzdDxib29sPih6dWZhbGxzbGlzdGVbd28xXSBeIHp1ZmFsbHNsaXN0ZVt3bzJdKSA8PCAnXG4nOwogICAgcmV0dXJuICh6dWZhbGxzbGlzdGVbd28xXSBeIHp1ZmFsbHNsaXN0ZVt3bzJdKTsKfQoKaW50IG1haW4oKQp7CiAgICBjb25zdCBpbnQgQ09VTlQgPSA1MjsKICAgIGludCB0cnVlX2NvdW50ID0gMDsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgQ09VTlQ7ICsraSkKICAgIHsKICAgICAgICB0cnVlX2NvdW50ICs9IHNvbWVCb29sKCkgPyAxIDogMDsKICAgIH0KICAgIAogICAgc3RkOjpjb3V0IDw8ICJcbnRydWU6ICIgPDwgdHJ1ZV9jb3VudCA8PCAiIC0gZmFsc2U6ICIgPDwgKENPVU5UIC0gdHJ1ZV9jb3VudCk7CiAgICAKfQ==