priklad2 <- function(){
  n <- 1250    # pocet poistiek
  lambda <- 2  # stredna hodnota narokov
  naroky_poistencov <- rpois(n, lambda)
  naroky_spolu <- sum(naroky_poistencov)
  return(naroky_spolu >= 2450 & naroky_spolu <= 2600)
}

set.seed(123)
priklad2_simulacia <- replicate(10^5, priklad2())
prop.table(table(priklad2_simulacia))

#########################################################

priklad3 <- function(){
  n <- 100     # pocet policajtiek
  mozny_pocet_vyplat <- c(0, 1, 2)  
  pravdepodobnosti <- c(0.6,      # nezostane do dochodku
                        0.4*0.25, # zostane a nebude vydata
                        0.4*0.75) # zostana a bude vydata
  pocet_vyplat <- sample(mozny_pocet_vyplat, size = n, replace = TRUE, prob = pravdepodobnosti)
  celkovy_pocet_vyplat <- sum(pocet_vyplat)
  return(celkovy_pocet_vyplat <= 90)
}

set.seed(123)
priklad3_simulacia <- replicate(10^5, priklad3())
prop.table(table(priklad3_simulacia))

#########################################################

priklad4 <- function(){
  n <- 100     # pocet bonbonov
  hmotnosti <- runif(n, min = 9, max = 11)
  celkova_hmotnost <- sum(hmotnosti)
  return(celkova_hmotnost < 995)
}

set.seed(123)
priklad4_simulacia <- replicate(10^5, priklad4())
prop.table(table(priklad4_simulacia))

# X_i ~ Ro(9, 11) -> E(X_i) = 10, D(X_i) = (11-9)^2/12 = 1/3
# X = X_1 + ... + X_100 -> E(X) = 100*10
# X_i nezavisle -> D(X) = 100*(1/3)
# CLV -> P(X < 995) je priblizne P(N(1000, 100/3) < 995)

pnorm(995, mean = 1000, sd = 10/sqrt(3))