기타/What I Learned

[TIL] 확률 및 동전의 앞/뒷면 비율 계산

가죽방패 2021. 12. 9. 19:24

※ 확률과 동전의 앞면/뒷면 발생 비율 계산하기

- '수학적 확률(선험적 확률)'은 사건이 발생할 가능성이 같다는 것으로 예를 들어 동전을 던져 앞면과 뒷면이

나올 수 있는 경우의 수는 앞면, 뒷면의 총 2가지이고 각 면이 나올 확률은 1/2 이다.

그리고 주사위 하나를 던질 때 나올 수 있는 경우의 수는 1, 2, 3, 4, 5, 6의 6가지이고 각 면이 나올 확률은 1/6이다.

import random

n = int(input("Simul count :"))
if n < 1 or n > 10000:
    print("Simul count = 1 ~ 10000")
else:
    print("Count : Ratio")
    coinF = 0
    for i in range(1, n+1):
        cFR = random.randint(0, 1)
        if cFR == 0:
            coinF = coinF + 1
        if i < 10:
            print("%5d : %5.1f%%"%(i, coinF/i*100))
        elif i< 100 and i % 10 == 0:
            print("%5d : %5.1f%%"%(i, coinF/i*100))
        elif i < 1000 and i % 100 == 0:
            print("%5d : %5.1f%%"%(i, coinF/i*100))
        elif i >= 1000 and i % 1000 == 0:
            print("%5d : %5.1f%%"%(i, coinF/i*100))
    print("%5d : %5.1f%%"%(i, coinF/i*100))

실험 횟수가 많아지면서 이론적인 확률과 같아지는 현상을 대수의 법칙(law of large numbers)이라고 함