Simulace pro jedno n
Začněme tím, že pro místnost s 50 lidmi najdeme řešení pomocí simulace.
V tomto kódu proměnná n představuje velikost místnosti a proměnná match je čítač, který sleduje, kolikrát se v simulaci vyskytla alespoň jedna shoda v narozeninách. Na začátku je nastavena na 0 a v každé iteraci, kde ke shodě dojde, se zvýší o 1.
Toto cvičení je součástí kurzu
Probability Puzzles in R
Pokyny k cvičení
- Doplň požadované parametry funkce
sample, aby náhodně přiřadila narozeniny každé osobě. - Zvyš hodnotu proměnné
matchpodle podmínky, která ji předchází. - Vypočítej odhadovanou pravděpodobnost, že nastane alespoň jedna shoda.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
set.seed(1)
n <- 50
match <- 0
# Simulate 10000 rooms and check for matches in each room
for(i in 1:10000){
birthdays <- sample(___, ___, replace = ___)
if(length(unique(birthdays)) < n){
match <- ___
}
}
# Calculate the estimated probability of a match and print it
p_match <- ___
print(___)