Odpowiedź:
import random
def rzut_moneta():
if random.random() < 0.5:
return "o"
return "r"
rezultaty = ""
for i in range(10000):
rezultaty += rzut_moneta()
seria6o = rezultaty.count("oooooo")
seria6r = rezultaty.count("rrrrrr")
print("6o: ", seria6o)
print("6r: ", seria6r)
Wyjaśnienie:
Najpierw zdefiniowana jest funkcja która z 50% prawdopodobieństwem zwraca literę "r" lub "o".
Następnie funkcja ta wywołana zostaje 10000 razy a jej wynik jest dopisywany do zmiennej rezultaty. Więc powstaje łańcuch długi na 10000 znaków, składający się z liter "r" lub "o".
Nie do końca zgodnie z poleceniem skrypt zamiast list, wykorzystuje ciąg znaków i wykorzystując metodę .count zwraca liczbę wystąpień sześciu kolejnych "o" oraz "r"