#############
### CAS 9 ###
#############


# Visedimenzione slucajne velicine, odnosno slucajne vektore.

# 1) 
# Iz kutije u kojoj su cetiri cedulje numerisane brojevima {1, 2, 3, 4} izvlacimo,
# bez vracanja, dok ne izvucemo cedulju sa neparnim brojem.
# Ako je X - zbir izvucenih brojeva, a Y -  broj izvlacenja. 
# Naci raspodelu slucajnoh vektora (X, Y).
# Naci marginalne raspodele za X i Y. Odrediti E(X*Y)


# Prvo cemo na tabli uraditi.
# Resenje:
izvlacenja_raspodela <- function(N, x_vrednosti = 1:9, y_vrednosti = 1:3  )
{
  matrica = matrix(0, ncol = length(y_vrednosti), nrow = length(x_vrednosti))
  colnames(matrica) = y_vrednosti
  rownames(matrica) = x_vrednosti
  for(i in 1:N)
  {
    redosled = sample(1:4, 3, replace = FALSE)
    suma = cumsum(redosled)
  
    y = which(suma %% 2 == 1)[1] # to ce zapravo biti Y.
    
    x = suma[y]
    
    matrica[x, y] =  matrica[x, y] + 1
  }
  
  return(matrica/N)
}
izvlacenja_raspodela(10000)



# Da sklonime sve nemoguce vrednosti
izvlacenja_raspodela <- function(N, x_vrednosti = seq(1, 9, 2), y_vrednosti = 1:3  )
{
  matrica = matrix(0, ncol = length(y_vrednosti), nrow = length(x_vrednosti))
  colnames(matrica) = y_vrednosti
  rownames(matrica) = x_vrednosti
  for(i in 1:N)
  {
    redosled = sample(1:4, 3, replace = FALSE)
    suma = cumsum(redosled)
    
    y = which(suma %% 2 == 1)[1] # to ce zapravo biti Y.
    x = suma[y]
    
    matrica[(x+1)/2, y] =  matrica[(x+1)/2, y] + 1
    # mora tako, jer inace "x" smatra koji je po redosledu, a ne po zadatom nazivu.
  }
  
  return(matrica/N)
}
izvlacenja_raspodela(10000)


# 2)
# Zadatak sa kolokvijuma. 

minmax <- function(n)
{
  matrica = matrix(rep(0, 36), ncol = 6, nrow = 6)
  for(i in 1:n)
  {
    brojevi = sample(1:6, 4, replace = TRUE)
    x = max(brojevi)
    y = min(brojevi)
    matrica[x, y] = matrica[x, y] + 1
  }
  return(matrica/n)
  
}
minmax(10000)

# 3)
# Zajednicka raspodela slucajnih velicina X i Y data
# je u sledecoj tabeli
# Y\X|X=0 |  X=1 | X=2
# Y=0| 0.1|   0  | 0.2 
# Y=1| p  |  0.3 | 0.1
# Naci:
# a) Vrednost za p=?
# b) Marginalne raspodele za X i Y.
# v) Da li su X i Y nezavisne slucajne velicine?
# g) Odrediti raspodele za X+Y, X*Y, X^2+Y^2.

# Na tabli sve.


# 4)
# Izvodi se n nezavisnih bacanja kockice.
# U - broj bacanja do prve pojave parnog broja.
# V - broj bacanja do prve pojave jedinice.
# Naci zajednicku raspodelu. 
# Naci P{U>V}.

# Na tabli takodje.

# 5) 
# Regularni novcic se baca cetiri puta zaredom.
# T - broj palih pisama.
# R - najveci uzastopni broj pojavljivanja pisma.
# Naci raspodelu za (T, R).
# Ispitati nezavisnost T i R.

# 6)
# Iz skupa {1, 2, ..., n} se istovremeno na slucajan nacin biraju 
# dva broja X i Y. Neka je 
# W - rastojanje medju odabranim brojevima.
# Naci raspodelu za W.
# Izracunati P{1.56 < W <= 4.52}, P{W > 1.84}.

# 7)
# Posmatra se niz Bernulijevih eksperimenata,
# pri cemu se svaki pojedinacni eksperiment zavrsava
# uspehom sa verovatnocom q, 0<q<1.
# Neka je
# S_1 - broj neuspeha do prvog uspeha.
# S_2 - broj neuspeha izmedju realizacija prva dva uspeha.
# Naci:
# a) Naci (S_1, S_2).
# b) Odrediti P{S_2=3 | S_1 = 5}, P{S_2=3 | S_1 \in {4, 5, 6} }.