Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import random
- boxes = [
- [0, 0], # dwie srebrne
- [0, 1], # srebrna i złota
- [1, 1], # dwie złote
- ]
- # licznik wylosowanych kul srebrnych i złotych
- silver = gold = 0
- # kolejne losowania w pętli
- while True:
- # wybieramy losowo pudełko
- box = boxes[random.randint(0, 2)]
- if not 1 in box:
- # w pudełku nie ma złotej kuli,
- # więc warunek początkowy nie został spełniony,
- # czyli lecimy od początku
- continue
- # wybieramy losowo kulę z pudełka wybranego wcześniej
- # (tutaj już wiemy że w pudełku mamy złotą kulę)
- pick1 = random.randint(0, 1)
- ball = box[pick1]
- if ball != 1:
- # jeśli wybrana kula nie jest złota,
- # to warunek początkowy nie został spełniony,
- # czyli lecimy od początku
- continue
- # tutaj już mamy sytuajcę w której wybraliśmy
- # losową kulę z losowego pudełka i jest to kula złota,
- # więc bierzemy pozostałą kulę z tego samego pudełka
- pick2 = box[0] if pick1 == 1 else box[1]
- if pick2 == 0:
- # druga kula jest srebrna
- silver += 1
- else:
- # druga kula jest złota
- gold += 1
- # jeśli mamy już 1000000 wylosowanych kul, kończymy eksperyment
- if silver + gold == 1000000:
- break
- # wynik, to procent kul złotych wśród wszystkich wylosowanych kul
- result = float(gold * 100) / float(silver + gold)
- # piszemy wynik i kończymy
- print('{}%'.format(result))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement