# ------------------------------------------------------------------------------
# 1. VARIABEL ACAK: KLASIFIKASI DISKRIT ATAU KONTINU
# ------------------------------------------------------------------------------
# (a) Jumlah komentar per unggahan : Diskrit (hasil perhitungan/pencacahan)
# (b) Durasi video yang ditonton  : Kontinu (hasil pengukuran waktu)

cat("--- NOMOR 1: VARIABEL ACAK ---\n")
## --- NOMOR 1: VARIABEL ACAK ---
cat("(a) Jumlah komentar per unggahan : Variabel Acak Diskrit\n")
## (a) Jumlah komentar per unggahan : Variabel Acak Diskrit
cat("(b) Durasi video yang ditonton   : Variabel Acak Kontinu\n\n")
## (b) Durasi video yang ditonton   : Variabel Acak Kontinu
# ------------------------------------------------------------------------------
# 2. DISTRIBUSI BINOMIAL
# ------------------------------------------------------------------------------
n_binom <- 10
p_binom <- 0.25
q_binom <- 1 - p_binom
k_binom <- 2

# Probabilitas Tepat 2 Mengklik
p_tepat2_manual <- choose(n_binom, k_binom) * (p_binom^k_binom) * (q_binom^(n_binom - k_binom))
p_tepat2_r      <- dbinom(x = k_binom, size = n_binom, prob = p_binom)

# Rata-rata & Standar Deviasi
mean_binom <- n_binom * p_binom
sd_binom   <- sqrt(n_binom * p_binom * q_binom)

cat("--- NOMOR 2: DISTRIBUSI BINOMIAL ---\n")
## --- NOMOR 2: DISTRIBUSI BINOMIAL ---
cat("P(Tepat 2 Mengklik) Manual R :", p_tepat2_manual, "\n")
## P(Tepat 2 Mengklik) Manual R : 0.2815676
cat("P(Tepat 2 Mengklik) dbinom() :", p_tepat2_r, "\n")
## P(Tepat 2 Mengklik) dbinom() : 0.2815676
cat("Rata-rata (Mean)             :", mean_binom, "\n")
## Rata-rata (Mean)             : 2.5
cat("Standar Deviasi (SD)         :", sd_binom, "\n\n")
## Standar Deviasi (SD)         : 1.369306
# ------------------------------------------------------------------------------
# 3. DISTRIBUSI POISSON
# ------------------------------------------------------------------------------
lambda_poisson <- 8
k_poisson      <- 5

# P(Tepat 5 unggahan) - Manual vs RStudio
p_tepat5_manual <- (exp(-lambda_poisson) * (lambda_poisson^k_poisson)) / factorial(k_poisson)
p_tepat5_r      <- dpois(x = k_poisson, lambda = lambda_poisson)

# P(Lebih dari 12 unggahan) -> P(X > 12) = 1 - P(X <= 12)
p_lebih12_r     <- ppois(q = 12, lambda = lambda_poisson, lower.tail = FALSE)

cat("--- NOMOR 3: DISTRIBUSI POISSON ---\n")
## --- NOMOR 3: DISTRIBUSI POISSON ---
cat("P(Tepat 5 Unggahan) Manual R :", p_tepat5_manual, "\n")
## P(Tepat 5 Unggahan) Manual R : 0.09160366
cat("P(Tepat 5 Unggahan) dpois()  :", p_tepat5_r, "\n")
## P(Tepat 5 Unggahan) dpois()  : 0.09160366
cat("P(Lebih dari 12 Unggahan)    :", p_lebih12_r, "\n\n")
## P(Lebih dari 12 Unggahan)    : 0.0637972
# ------------------------------------------------------------------------------
# 4. DISTRIBUSI NORMAL & Z-SCORE
# ------------------------------------------------------------------------------
mu_norm  <- 3
sd_norm  <- 0.5
x_target <- 4

# P(loading > 4 detik)
z_val            <- (x_target - mu_norm) / sd_norm
p_loading_lebih4 <- pnorm(q = x_target, mean = mu_norm, sd = sd_norm, lower.tail = FALSE)

# Batas waktu 5% loading TERLAMA (Persentil ke-95)
z_95              <- qnorm(p = 0.95)
batas_5persen_man <- mu_norm + (z_95 * sd_norm)
batas_5persen_r   <- qnorm(p = 0.95, mean = mu_norm, sd = sd_norm)

cat("--- NOMOR 4: DISTRIBUSI NORMAL ---\n")
## --- NOMOR 4: DISTRIBUSI NORMAL ---
cat("Nilai Z-Score (X = 4)         :", z_val, "\n")
## Nilai Z-Score (X = 4)         : 2
cat("P(loading > 4 detik)          :", p_loading_lebih4, "\n")
## P(loading > 4 detik)          : 0.02275013
cat("Nilai Z Persentil 95%         :", z_95, "\n")
## Nilai Z Persentil 95%         : 1.644854
cat("Batas Waktu 5% Terlama (Detik):", batas_5persen_r, "\n")
## Batas Waktu 5% Terlama (Detik): 3.822427