# Simulasi 1000 variabel random dari distribusi uniform
set.seed(123) # Set seed untuk reproducibility
n <- 1000
uniform_data <- runif(n, min = 0, max = 1)
# Plot histogram
hist(uniform_data, breaks = 30, main = "Histogram Distribusi Uniform", xlab = "Nilai", col = "lightblue")

# Simulasi 1000 variabel random dari distribusi binomial
n_trials <- 10 # Jumlah percobaan
p_success <- 0.5 # Probabilitas sukses
binomial_data <- rbinom(n, size = n_trials, prob = p_success)
# Plot histogram
hist(binomial_data, breaks = 30, main = "Histogram Distribusi Binomial", xlab = "Jumlah Sukses", col = "lightgreen")

# Simulasi 1000 variabel random dari distribusi normal
mu <- 0 # Mean
sigma <- 1 # Standar deviasi
normal_data <- rnorm(n, mean = mu, sd = sigma)
# Plot histogram
hist(normal_data, breaks = 30, main = "Histogram Distribusi Normal", xlab = "Nilai", col = "lightpink")

#distribusi poisson
lambda <- 3 # Parameter lambda
poisson_data <- rpois(n, lambda)
hist(poisson_data, breaks = 30, main = "Histogram Distribusi Poisson", xlab = "Jumlah Kejadian", col = "lightyellow")

#distribusi eksponensial
rate <- 1 # Parameter rate
exp_data <- rexp(n, rate)
hist(exp_data, breaks = 30, main = "Histogram Distribusi Eksponensial", xlab = "Nilai", col = "lightcoral")

#studi kasus
# Simulasi pendapatan bulanan
set.seed(123)
n_employees <- 500
mean_income <- 10000000
sd_income <- 2000000
income_data <- rnorm(n_employees, mean = mean_income, sd = sd_income)
# 1. Rata-rata pendapatan simulasi
mean_simulated <- mean(income_data)
cat("Rata-rata pendapatan simulasi:", mean_simulated, "\n")
## Rata-rata pendapatan simulasi: 10069181
## Rata-rata pendapatan simulasi: 10069181
# 2. Probabilitas pendapatan di atas Rp 12.000.000
prob_above_12m <- sum(income_data > 12000000) / n_employees
cat("Probabilitas pendapatan di atas Rp 12.000.000:", prob_above_12m, "\n")
## Probabilitas pendapatan di atas Rp 12.000.000: 0.164
## Probabilitas pendapatan di atas Rp 12.000.000: 0.164
#studi kasus2
# Simulasi jumlah pelanggan
set.seed(123)
n_days <- 30
lambda_customers <- 50
customers_data <- rpois(n_days, lambda_customers)
# 1. Rata-rata jumlah pelanggan simulasi
mean_customers <- mean(customers_data)
cat("Rata-rata jumlah pelanggan simulasi:", mean_customers, "\n")
## Rata-rata jumlah pelanggan simulasi: 48.96667
## Rata-rata jumlah pelanggan simulasi: 48.96667
# 2. Probabilitas jumlah pelanggan lebih dari 60
prob_above_60 <- sum(customers_data > 60) / n_days
cat("Probabilitas jumlah pelanggan lebih dari 60:", prob_above_60, "\n")
## Probabilitas jumlah pelanggan lebih dari 60: 0.03333333
## Probabilitas jumlah pelanggan lebih dari 60: 0.03333333
#tugas
#distribusi kontinu
set.seed(123)
n_customers <- 500
rate_service <- 1/5 # Rata-rata waktu pelayanan 5 menit
service_time <- rexp(n_customers, rate = rate_service)
# 1. Rata-rata waktu pelayanan
mean_service_time <- mean(service_time)
cat("Rata-rata waktu pelayanan pelanggan:", mean_service_time, "menit\n")
## Rata-rata waktu pelayanan pelanggan: 5.035506 menit
# 2. Probabilitas pelanggan dilayani dalam waktu kurang dari 3 menit
prob_less_than_3 <- sum(service_time < 3) / n_customers
cat("Probabilitas pelanggan dilayani dalam waktu kurang dari 3 menit:", prob_less_than_3, "\n")
## Probabilitas pelanggan dilayani dalam waktu kurang dari 3 menit: 0.418
# 3. Visualisasi Distribusi Waktu Pelayanan
hist(service_time, breaks = 30, col = "lightcoral",
main = "Histogram Waktu Pelayanan Pelanggan",
xlab = "Waktu Pelayanan (menit)", border = "black")

#distribusi binomial
# Set seed untuk hasil yang dapat direplikasi
set.seed(123)
# Parameter Distribusi Binomial
n_days <- 1000 # Jumlah hari yang disimulasikan
n_customers_per_day <- 10 # Jumlah pelanggan setiap hari
p_purchase <- 0.3 # Probabilitas pelanggan melakukan pembelian
# Simulasi Binomial: Berapa banyak pelanggan yang membeli per hari?
binomial_data <- rbinom(n_days, size = n_customers_per_day, prob = p_purchase)
# 1. Rata-rata jumlah pelanggan yang membeli per hari
mean_purchases <- mean(binomial_data)
cat("Rata-rata pelanggan yang membeli per hari:", mean_purchases, "\n")
## Rata-rata pelanggan yang membeli per hari: 2.989
# 2. Probabilitas ada lebih dari 5 pelanggan yang membeli
prob_more_than_5 <- sum(binomial_data > 5) / n_days
cat("Probabilitas lebih dari 5 pelanggan membeli:", prob_more_than_5, "\n")
## Probabilitas lebih dari 5 pelanggan membeli: 0.05
# 3. Histogram Distribusi Binomial
hist(binomial_data, breaks = 10, col = "lightblue",
main = "Histogram Distribusi Binomial: Jumlah Pelanggan Membeli per Hari",
xlab = "Jumlah Pelanggan yang Membeli", border = "black")
