Cod sursa(job #2403292)

Utilizator Consti.001FMI Dranca Constantin Consti.001 Data 11 aprilie 2019 13:47:06
Problema A+B Scor 0
Compilator c-32 Status done
Runda Lista lui wefgef Marime 1.02 kb
U <- runif(1)
X <- 1
if (U<0.1)
{
  X<-1
}
else
{
  if(U<0.2)
  {
    X<-2
  }
  else
  {
    if(U<0.3)
    {
      X<-3
    }
    else
    {
      if(U<0.9)
      {
        X<-4
      }
      else
      {
        X<-5
      }
    }
  }
}


#Versiunea 1`
#preiau vectorii p =p1, p2,..,pn
#x = (x1,x2,...,xn)

x <- c(1,2,3,4,5)
p <- c(0.1,0.1,0.1,0.6,0.1)

f <- function(k,p,x)
{
  
}


p_s <- sort(p, dec=TRUE)
p_s

#X~ Geom (p)
#X: (1 2 3 ....)
#   (p qp q^2p ...)
# P(X=i) = p*q^(i-1)
# p1 +p2+..+pi-1 <= U < p1 + p2+ ..+pi
# p1+ P2+.., +pi = suma cu k=1 la i P(X = k) = 1 - P(X:>i) = 1 - q^i
# 1-q^(i-1) <= U < 1 - q^(i)
# q^(i-1) >= 1-U >= q^i
# X = min{i |  q^i <1-U <= q^(i-1)}
# q^i < 1-U <=> i * log q < log(1-U)  <=> i > log(1-U)/log(q)
# X = (parte intreaha superioara din (lof(1-U))/log(q)) +1


# Tema
# X ~ Negbin(r,p)

# pj = P(X=j) = (j-1)!/((j-r)!*(r-1)!)  *  p^r* (1-p)^(j-r)

# 1. Rezolvati si implementati un alg de simulare
# 2. pj+1 = (j(1-p)/(j+1-r)) * pj