Je beschikt over $$N$$ munten, waarbij elke munt een gelijke kans heeft om "munt" dan wel
"kop" op te leveren bij opgooien. Gevraagd wordt om de kans te bepalen dat bij opgooien van die
$$N$$ munten er precies $$0 \le M \le N$$ "munt" opleveren.
Schrijf volgende twee functies:
munten_sim()
: de gezochte kans (float
) wordt experimenteel bepaald, met als argumenten:
N
: het aantal munten (N
geheel en $$N \ge 0$$)M
: het gewenste aantal "munt"-resultaten (M
geheel en $$0 \le M \le N$$)exp
: het aantal experimenten dat hiervoor uitgevoerd wordt (in elk experiment worden dus
N
munten opgegooid, en het aantal "munt"-resultaten wordt geteld), met exp
geheel en strikt positief.munten_exact()
: de gezochte kans (float
) wordt exact bepaald, met als argumenten N
en M
(zelfde
betekenis en randvoorwaarden als hierboven). Deze kans wordt gegeven door:N
munten via:x = np.random.randint(0, 2, N)
1
als "munt" en de waarde 0
als "kop".
np.random.seed(5) aantal_munten = 5 N = 10000 l_sim = [munten_sim(aantal_munten, i, N) for i in range(aantal_munten + 1)] # [0.03, 0.1599, 0.3148, 0.3139, 0.1542, 0.0294] l_exa = [munten_exact(aantal_munten, i) for i in range(aantal_munten + 1)] # [0.03125, 0.15625, 0.3125, 0.3125, 0.15625, 0.03125] print(l_sim) print(l_exa)