library(ggplot2)
library(gridExtra)
# Data kasus
n <- 10
jumlah_selisih <- 25
rata_selisih <- jumlah_selisih / n

jumlah_kuadrat_deviasi <- 36.5
s2 <- jumlah_kuadrat_deviasi / (n - 1)
s <- sqrt(s2)

# Hitung t hitung
t_hit <- rata_selisih / (s / sqrt(n))

# t tabel dua arah
alpha <- 0.05
df <- n - 1
t_tabel <- qt(1 - alpha/2, df)

# Output
cat("1_1. Perumusan Hipotesis\n")
## 1_1. Perumusan Hipotesis
cat("H0 : μ_D = 0 → Tidak ada perbedaan rata-rata konsumsi energi antara pelumas lama dan pelumas baru\n")
## H0 : μ_D = 0 → Tidak ada perbedaan rata-rata konsumsi energi antara pelumas lama dan pelumas baru
cat("H1 : μ_D ≠ 0 → Ada perbedaan rata-rata konsumsi energi antara pelumas lama dan pelumas baru\n\n")
## H1 : μ_D ≠ 0 → Ada perbedaan rata-rata konsumsi energi antara pelumas lama dan pelumas baru
cat("1_2. Menghitung Statistik Uji\n")
## 1_2. Menghitung Statistik Uji
cat("Jumlah selisih (∑D) =", jumlah_selisih, "\n")
## Jumlah selisih (∑D) = 25
cat("Rata-rata selisih (D̄) =", round(rata_selisih, 2), "\n")
## Rata-rata selisih (D̄) = 2.5
cat("Simpangan baku selisih (s_D) =", round(s, 3), "\n")
## Simpangan baku selisih (s_D) = 2.014
cat("t hitung =", round(t_hit, 3), "\n\n")
## t hitung = 3.926
cat("1_3. riteria Pengujian\n")
## 1_3. riteria Pengujian
cat("Taraf nyata (a) =", alpha, "\n")
## Taraf nyata (a) = 0.05
cat("Derajat bebas (df) =", df, "\n")
## Derajat bebas (df) = 9
cat("t tabel dua arah (a = 0.05, df =", df, ") = ±", round(t_tabel, 3), "\n")
## t tabel dua arah (a = 0.05, df = 9 ) = ± 2.262
cat("Tolak H0 jika t hitung < -t tabel atau t hitung > t tabel\n\n")
## Tolak H0 jika t hitung < -t tabel atau t hitung > t tabel
cat("1_4. Pengambilan Keputusan\n")
## 1_4. Pengambilan Keputusan
if (abs(t_hit) > t_tabel) {
  cat("t hitung =", round(t_hit, 3), ">", round(t_tabel, 3), "→ H0 DITOLAK\n\n")
  cat("Kesimpulan\n")
  cat("Pada taraf nyata 5%, terdapat cukup bukti bahwa penggunaan pelumas SynthoLube 9000\n")
  cat("memberikan perbedaan yang signifikan terhadap konsumsi energi mesin tempa.\n")
  cat("Pelumas baru ini memengaruhi efisiensi energi, baik meningkatkan maupun menurunkan konsumsi.\n")
} else {
  cat("t hitung =", round(t_hit, 3), "≤", round(t_tabel, 3), "→ H0 GAGAL DITOLAK\n\n")
  cat("Kesimpulan\n")
  cat("Tidak terdapat cukup bukti untuk menyimpulkan adanya perbedaan signifikan konsumsi energi\n")
  cat("antara pelumas lama dan pelumas baru.\n")
}
## t hitung = 3.926 > 2.262 → H0 DITOLAK
## 
## Kesimpulan
## Pada taraf nyata 5%, terdapat cukup bukti bahwa penggunaan pelumas SynthoLube 9000
## memberikan perbedaan yang signifikan terhadap konsumsi energi mesin tempa.
## Pelumas baru ini memengaruhi efisiensi energi, baik meningkatkan maupun menurunkan konsumsi.
cat("\n")

1

# Data hasil panen
bioSubur <- c(4.0, 5.5, 4.2, 5.3, 4.5, 5.0, 4.6, 5.1)
nutriPrima <- c(5.2, 4.5, 5.5, 4.8, 5.0, 5.3, 4.6, 5.4, 4.7, 5.0)

# Ringkasan deskriptif
summary(bioSubur)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   4.000   4.425   4.800   4.775   5.150   5.500
summary(nutriPrima)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   4.500   4.725   5.000   5.000   5.275   5.500
sd(bioSubur)
## [1] 0.5338539
sd(nutriPrima)
## [1] 0.3464102
# Visualisasi Boxplot
boxplot(bioSubur, nutriPrima, 
        names = c("BioSubur", "NutriPrima"), 
        main = "Perbandingan Hasil Panen",
        ylab = "Hasil Panen (kg/petak)",
        col = c("Red", "blue"))

# Uji hipotesis: t-test dua sampel, variansi tidak diasumsikan sama
# H0: mean BioSubur >= mean NutriPrima
# H1: mean BioSubur < mean NutriPrima (uji satu arah)
t.test(bioSubur, nutriPrima,
       alternative = "less",   # karena ingin tahu apakah BioSubur < NutriPrima
       var.equal = FALSE,      # variansi tidak diasumsikan sama
       conf.level = 0.90)      # sesuai alpha = 10%
## 
##  Welch Two Sample t-test
## 
## data:  bioSubur and nutriPrima
## t = -1.031, df = 11.496, p-value = 0.1619
## alternative hypothesis: true difference in means is less than 0
## 90 percent confidence interval:
##        -Inf 0.07172719
## sample estimates:
## mean of x mean of y 
##     4.775     5.000
cat("\n")

2

# Data yang diketahui
n <- 9              
x_bar <- 84         
s <- 9               
mu0 <- 80            
alpha <- 0.05  

Menghitung statistik uji-t

t_hitung <- (x_bar - mu0) / (s / sqrt(n))
cat("Statistik uji-t (t_h):", t_hitung, "\n")
## Statistik uji-t (t_h): 1.333333

Menghitung derajat kebebasan

df <- n - 1

Menentukan nilai kritis dari distribusi t

t_kritis <- qt(1 - alpha, df)
cat("Nilai kritis t(0.05, 8):", t_kritis, "\n")
## Nilai kritis t(0.05, 8): 1.859548

Pengambilan keputusan

if (t_hitung > t_kritis) {
  cat("Keputusan: Tolak H0 (ada bukti signifikan COD > 80 mg/L)\n")
} else {
  cat("Keputusan: Gagal tolak H0 (tidak cukup bukti COD > 80 mg/L)\n")
}
## Keputusan: Gagal tolak H0 (tidak cukup bukti COD > 80 mg/L)

Menghitung p-value (satu arah ekor kanan)

p_value <- pt(t_hitung, df, lower.tail = FALSE)
cat("p-value:", p_value, "\n")
## p-value: 0.1095692

Visualisasi distribusi t

curve(dt(x, df), from = -4, to = 4, main = "Distribusi t (df = 8)", xlab = "t", ylab = "Density")
abline(v = t_kritis, col = "red", lty = 2)
abline(v = t_hitung, col = "blue")
legend("topright", legend = c("t kritis", "t hitung"), col = c("red", "blue"), lty = c(2, 1))

Ringkasan hasil

cat("\n--- Ringkasan Hasil ---\n")
## 
## --- Ringkasan Hasil ---
cat("1. Statistik uji-t:", round(t_hitung, 3), "\n")
## 1. Statistik uji-t: 1.333
cat("2. Nilai kritis t(0.05, 8):", round(t_kritis, 3), "\n")
## 2. Nilai kritis t(0.05, 8): 1.86
cat("3. p-value:", round(p_value, 4), "\n")
## 3. p-value: 0.1096
cat("4. Keputusan:")
## 4. Keputusan:
if (t_hitung > t_kritis) {
  cat(" Tolak H0, ada bukti signifikan bahwa rata-rata COD > 80 mg/L\n")
} else {
  cat(" Gagal tolak H0, tidak cukup bukti bahwa rata-rata COD > 80 mg/L\n")
}
##  Gagal tolak H0, tidak cukup bukti bahwa rata-rata COD > 80 mg/L
cat("5. Rekomendasi untuk BLHD:")
## 5. Rekomendasi untuk BLHD:
if (t_hitung > t_kritis) {
  cat(" Tindakan hukum dapat dipertimbangkan karena terdapat bukti kuat pelanggaran.\n")
} else {
  cat(" Tidak cukup bukti untuk tindakan hukum. Disarankan pengambilan sampel lebih banyak.\n")
}
##  Tidak cukup bukti untuk tindakan hukum. Disarankan pengambilan sampel lebih banyak.

3

# Data yang diketahui
data <- c(35, 40, 48, 55, 60, 65, 70, 75, 82, 88, 95, 100)
n <- length(data)          # Jumlah sampel
sigma0_squared <- 150      # Varians populasi historis
alpha <- 0.10              # Tingkat signifikansi 10%

# 1. Menghitung varians sampel
s_squared <- var(data)
cat("Varians sampel (s^2):", s_squared, "\n")
## Varians sampel (s^2): 446.9318
# 2. Menghitung statistik uji Chi-Square
chi_squared <- (n - 1) * s_squared / sigma0_squared
cat("Statistik uji Chi-Square:", chi_squared, "\n")
## Statistik uji Chi-Square: 32.775
# 3. Menentukan nilai kritis
df <- n - 1
chi_critical <- qchisq(1 - alpha, df)
cat("Nilai kritis Chi-Square (0.10, 11):", chi_critical, "\n")
## Nilai kritis Chi-Square (0.10, 11): 17.27501
# 4. Menghitung p-value
p_value <- pchisq(chi_squared, df, lower.tail = FALSE)
cat("p-value:", p_value, "\n")
## p-value: 0.0005721869
# 5. Pengambilan keputusan
if (chi_squared > chi_critical) {
  cat("Keputusan: Tolak H0 (ragam signifikan lebih besar dari 150)\n")
} else {
  cat("Keputusan: Gagal tolak H0 (tidak cukup bukti ragam lebih besar dari 150)\n")
}
## Keputusan: Tolak H0 (ragam signifikan lebih besar dari 150)
# Visualisasi distribusi Chi-Square
curve(dchisq(x, df), from = 0, to = 40, 
      main = "Distribusi Chi-Square (df = 11)",
      xlab = "Chi-Square", ylab = "Density")
abline(v = chi_critical, col = "red", lty = 2)  # Garis nilai kritis
abline(v = chi_squared, col = "blue")           # Garis statistik uji
legend("topright", 
       legend = c(paste("Nilai kritis (", round(chi_critical, 3), ")", sep = ""), 
                  paste("Statistik uji (", round(chi_squared, 3), ")", sep = "")),
       col = c("red", "blue"), lty = c(2, 1))

# Ringkasan hasil
cat("\n--- Ringkasan Hasil Uji Hipotesis ---\n")
## 
## --- Ringkasan Hasil Uji Hipotesis ---
cat("1. Hipotesis:\n")
## 1. Hipotesis:
cat("   H0: σ² ≤ 150 (ragam tidak lebih besar dari nilai historis)\n")
##    H0: σ² ≤ 150 (ragam tidak lebih besar dari nilai historis)
cat("   H1: σ² > 150 (ragam lebih besar dari nilai historis)\n\n")
##    H1: σ² > 150 (ragam lebih besar dari nilai historis)
cat("2. Statistik Uji:\n")
## 2. Statistik Uji:
cat("   Varians sampel =", round(s_squared, 2), "\n")
##    Varians sampel = 446.93
cat("   Chi-Square hitung =", round(chi_squared, 2), "\n\n")
##    Chi-Square hitung = 32.77
cat("3. Kriteria Pengujian (α = 0.10):\n")
## 3. Kriteria Pengujian (α = 0.10):
cat("   Tolak H0 jika Chi-Square >", round(chi_critical, 3), "\n\n")
##    Tolak H0 jika Chi-Square > 17.275
cat("4. Hasil Pengujian:\n")
## 4. Hasil Pengujian:
cat("   Chi-Square hitung (", round(chi_squared, 2), ") ", 
    ifelse(chi_squared > chi_critical, ">", "<="), 
    " Chi-Square kritis (", round(chi_critical, 2), ")\n", sep = "")
##    Chi-Square hitung (32.77) > Chi-Square kritis (17.28)
cat("   p-value =", format.pval(p_value, digits = 4), "\n\n")
##    p-value = 0.0005722
cat("5. Kesimpulan:\n")
## 5. Kesimpulan:
if (chi_squared > chi_critical) {
  cat("   Tolak H0. Terdapat bukti statistik yang signifikan pada tingkat 10% bahwa\n")
  cat("   ragam skor sikap masyarakat (>150) lebih besar dari nilai historis.\n")
  cat("   Ini menunjukkan polarisasi opini yang lebih tinggi terhadap kebijakan AI.\n")
} else {
  cat("   Gagal tolak H0. Tidak cukup bukti bahwa ragam skor sikap masyarakat\n")
  cat("   lebih besar dari 150 pada tingkat signifikansi 10%.\n")
}
##    Tolak H0. Terdapat bukti statistik yang signifikan pada tingkat 10% bahwa
##    ragam skor sikap masyarakat (>150) lebih besar dari nilai historis.
##    Ini menunjukkan polarisasi opini yang lebih tinggi terhadap kebijakan AI.

4

# Langkah 1: Masukkan semua parameter yang diketahui dari soal
mu_hipotesis <- 40.0           # Rata-rata populasi menurut H0
x_bar <- 41.2                  # Rata-rata sampel
sigma_populasi <- 3.0          # Simpangan baku populasi (diketahui)
n <- 36                        # Ukuran sampel
alpha <- 0.05                  # Tingkat signifikansi

# Langkah 2: Hitung Z-statistik (Z-hitung)
# Rumus: (x̄ - μ0) / (σ / √n)
se <- sigma_populasi / sqrt(n)     # Standard Error
z_hitung <- (x_bar - mu_hipotesis) / se

# Langkah 3: Hitung P-value untuk uji dua arah
p_value <- 2 * pnorm(abs(z_hitung), lower.tail = FALSE)

# Langkah 4: Hitung nilai Z-kritis (dua sisi)
z_kritis_atas <- qnorm(p = alpha / 2, lower.tail = FALSE)
z_kritis_bawah <- qnorm(p = alpha / 2, lower.tail = TRUE)

# Langkah 5: Tampilkan hasil uji dan interpretasi lengkap
cat("--- Hasil Uji & Interpretasi Lengkap ---\n")
## --- Hasil Uji & Interpretasi Lengkap ---
cat("Parameter Diketahui:\n")
## Parameter Diketahui:
cat(sprintf(" Rata-rata sampel (x̄): %.2f MPa\n", x_bar))
##  Rata-rata sampel (x̄): 41.20 MPa
cat(sprintf(" Ukuran Sampel (n): %d\n", n))
##  Ukuran Sampel (n): 36
cat(sprintf(" Simpangan Baku Populasi (σ): %.1f MPa\n", sigma_populasi))
##  Simpangan Baku Populasi (σ): 3.0 MPa
cat(sprintf(" Rata-rata Hipotesis (μ0): %.1f MPa\n", mu_hipotesis))
##  Rata-rata Hipotesis (μ0): 40.0 MPa
cat(sprintf(" Tingkat Signifikansi (α): %.2f\n", alpha))
##  Tingkat Signifikansi (α): 0.05
cat("---\n")
## ---
cat(sprintf(" Z-hitung: %.3f\n", z_hitung))
##  Z-hitung: 2.400
cat(sprintf(" Z-kritis bawah: %.3f, Z-kritis atas: %.3f\n", z_kritis_bawah, z_kritis_atas))
##  Z-kritis bawah: -1.960, Z-kritis atas: 1.960
cat(sprintf(" P-value: %.5f\n", p_value))
##  P-value: 0.01640
cat("---\n")
## ---
cat("Pengambilan Keputusan:\n")
## Pengambilan Keputusan:
if (abs(z_hitung) > z_kritis_atas) {
  cat("Karena |Z-hitung| > Z-kritis, maka H0 ditolak.\n")
  cat(sprintf("Kesimpulan:\nPada taraf nyata %.1f%%, terdapat cukup bukti untuk menyatakan bahwa rata-rata kekuatan tekan beton dengan aditif polimer tidak sama dengan %.1f MPa.\n", alpha * 100, mu_hipotesis))
} else {
  cat("Karena |Z-hitung| <= Z-kritis, maka H0 gagal ditolak.\n")
  cat(sprintf("Kesimpulan:\nPada taraf nyata %.1f%%, belum terdapat cukup bukti untuk menyatakan bahwa rata-rata kekuatan tekan beton dengan aditif polimer tidak sama dengan %.1f MPa.\n", alpha * 100, mu_hipotesis))
}
## Karena |Z-hitung| > Z-kritis, maka H0 ditolak.
## Kesimpulan:
## Pada taraf nyata 5.0%, terdapat cukup bukti untuk menyatakan bahwa rata-rata kekuatan tekan beton dengan aditif polimer tidak sama dengan 40.0 MPa.
cat("\n")

5

# Diketahui: 
p_0 <- 0.35         # Proporsi benchmark 
x <- 87             # Jumlah warga yang menyebar hoaks 
n <- 300            # Ukuran sampel 
p_hat <- x / n      # Proporsi sampel 
alpha <- 0.10       # Taraf signifikansi 
 
# Hitung Z-score untuk proporsi 
z <- (p_hat - p_0) / sqrt(p_0 * (1 - p_0) / n) 
z 
## [1] -2.178819
## [1] -2.178819 
# Nilai kritis uji satu sisi (kiri) 
z_critical <- qnorm(alpha) 
z_critical 
## [1] -1.281552
## [1] -1.281552 
# Keputusan 
if (z < z_critical) { 
  cat("Tolak H0: Proporsi hoaks turun secara signifikan.\n") 
} else { 
  cat("Gagal tolak H0: Tidak cukup bukti proporsi hoaks turun.\n") 
}
## Tolak H0: Proporsi hoaks turun secara signifikan.

6

# Data sampel 
lini_alfa <- c(75.01, 74.98, 75.03, 74.95, 75.00, 75.05, 74.97, 75.02, 74.99, 
75.04) 
lini_beta <- c(75.05, 74.96, 75.08, 74.94, 75.02, 75.09, 74.95, 75.06, 74.97, 
75.10, 75.03, 74.99) 
 
# Parameter yang diketahui 
sigma2_alfa <- 0.0025  # Ragam populasi Alfa 
sigma2_beta <- 0.0036  # Ragam populasi Beta 
n1 <- length(lini_alfa) 
n2 <- length(lini_beta) 
 
# Rata-rata 
mean_alfa <- mean(lini_alfa) 
mean_beta <- mean(lini_beta) 
 
# Statistik uji Z 
z_stat <- (mean_alfa - mean_beta) / sqrt(sigma2_alfa / n1 + sigma2_beta / n2) 
 
# Nilai kritis Z (dua arah, alpha = 0.05) 
z_critical <- qnorm(0.975) 
 
# Cetak hasil 
cat("=== HASIL ANALISIS KASUS 07 ===\n") 
## === HASIL ANALISIS KASUS 07 ===
## === HASIL ANALISIS KASUS 07 === 
cat("Rata-rata Lini Alfa:", round(mean_alfa, 3), "\n") 
## Rata-rata Lini Alfa: 75.004
## Rata-rata Lini Alfa: 75.004 
cat("Rata-rata Lini Beta:", round(mean_beta, 3), "\n") 
## Rata-rata Lini Beta: 75.02
## Rata-rata Lini Beta: 75.02 
cat("Selisih rata-rata:", round(mean_alfa - mean_beta, 3), "\n") 
## Selisih rata-rata: -0.016
## Selisih rata-rata: -0.016 
cat("Statistik Z:", round(z_stat, 3), "\n") 
## Statistik Z: -0.682
## Statistik Z: -0.682 
cat("Nilai kritis Z (±):", round(z_critical, 3), "\n") 
## Nilai kritis Z (±): 1.96
## Nilai kritis Z (±): 1.96 
# Keputusan 
if (abs(z_stat) > z_critical) { 
cat("Keputusan: Tolak H0 - Terdapat perbedaan signifikan.\n") 
} else { 
cat("Keputusan: Gagal tolak H0 - Tidak terdapat perbedaan signifikan.\n") 
}
## Keputusan: Gagal tolak H0 - Tidak terdapat perbedaan signifikan.

7

# --- Data ---
n1 <- 400       # Jumlah pasien Tenso понижена
x1 <- 48        # Pasien dengan batuk kering (Tenso)
p1 <- x1 / n1   # Proporsi Tenso

n2 <- 500       # Jumlah pasien Normopress
x2 <- 45        # Pasien dengan batuk kering (Normopress)
p2 <- x2 / n2   # Proporsi Normopress

# --- Proporsi gabungan ---
p_pooled <- (x1 + x2) / (n1 + n2)

# --- Standard Error ---
SE <- sqrt(p_pooled * (1 - p_pooled) * (1/n1 + 1/n2))

# --- Z Hitung ---
z_hitung <- (p1 - p2) / SE

# --- Z Kritis untuk alpha = 0.01 (uji satu arah ekor kanan) ---
alpha <- 0.01
z_kritis <- qnorm(1 - alpha)

# --- P-value (uji satu arah: p1 > p2) ---
p_value <- pnorm(z_hitung, lower.tail = FALSE)

# --- Interpretasi Lengkap ---
cat("--- Hasil Uji Proporsi Dua Sampel ---\n\n")
## --- Hasil Uji Proporsi Dua Sampel ---
cat(sprintf("Proporsi Tenso понижена (p1): %.4f\n", p1))
## Proporsi Tenso понижена (p1): 0.1200
cat(sprintf("Proporsi Normopress (p2): %.4f\n", p2))
## Proporsi Normopress (p2): 0.0900
cat(sprintf("Proporsi gabungan (p): %.4f\n", p_pooled))
## Proporsi gabungan (p): 0.1033
cat(sprintf("Standard Error (SE): %.4f\n", SE))
## Standard Error (SE): 0.0204
cat(sprintf("Z-Hitung: %.4f\n", z_hitung))
## Z-Hitung: 1.4692
cat(sprintf("Z-Kritis (α = %.2f): %.4f\n", alpha, z_kritis))
## Z-Kritis (α = 0.01): 2.3263
cat(sprintf("P-value: %.4f\n", p_value))
## P-value: 0.0709
cat("\n----------------------------------------\n")
## 
## ----------------------------------------
# --- Keputusan berdasarkan Z dan P-value ---
if (z_hitung > z_kritis) {
  cat("Karena Z-Hitung > Z-Kritis, maka Hipotesis Nol DITOLAK.\n")
} else {
  cat("Karena Z-Hitung <= Z-Kritis, maka Hipotesis Nol GAGAL DITOLAK.\n")
}
## Karena Z-Hitung <= Z-Kritis, maka Hipotesis Nol GAGAL DITOLAK.
if (p_value <= alpha) {
  cat(sprintf("Karena P-value (%.4f) <= alpha (%.2f), maka Hipotesis Nol DITOLAK.\n", p_value, alpha))
} else {
  cat(sprintf("Karena P-value (%.4f) > alpha (%.2f), maka Hipotesis Nol GAGAL DITOLAK.\n", p_value, alpha))
}
## Karena P-value (0.0709) > alpha (0.01), maka Hipotesis Nol GAGAL DITOLAK.
# --- Kesimpulan ---
cat("\nKESIMPULAN:\n")
## 
## KESIMPULAN:
if (p_value <= alpha) {
  cat("Dengan taraf nyata 1%, terdapat cukup bukti bahwa insiden batuk kering pada Tenso понижена LEBIH TINGGI dibandingkan Normopress.\n")
} else {
  cat("Dengan taraf nyata 1%, TIDAK terdapat cukup bukti bahwa insiden batuk kering pada Tenso понижена lebih tinggi dari Normopress.\n")
}
## Dengan taraf nyata 1%, TIDAK terdapat cukup bukti bahwa insiden batuk kering pada Tenso понижена lebih tinggi dari Normopress.

8

# --- Data ---
inovatif <- c(2650, 2750, 2500, 2800, 2670, 2730, 2530, 2770, 2700)
klasik <- c(2600, 2700, 2450, 2730, 2530, 2670, 2550)

# --- Parameter ---
alpha <- 0.01

# --- Uji-t Dua Sampel, varians diasumsikan sama ---
hasil_uji <- t.test(inovatif, klasik, alternative = "greater", var.equal = TRUE)

# --- Hitung nilai t-kritis ---
df <- hasil_uji$parameter
t_kritis <- qt(p = alpha, df = df, lower.tail = FALSE)

# --- Ekstrak hasil ---
t_hitung <- hasil_uji$statistic
p_value <- hasil_uji$p.value

# --- Interpretasi ---
cat("--- Hasil Uji Ketahanan Abrasi ---\n\n")
## --- Hasil Uji Ketahanan Abrasi ---
cat("Hipotesis Nol (H0): μ_inovatif ≤ μ_klasik\n")
## Hipotesis Nol (H0): μ_inovatif ≤ μ_klasik
cat("Hipotesis Alternatif (H1): μ_inovatif > μ_klasik\n")
## Hipotesis Alternatif (H1): μ_inovatif > μ_klasik
cat("----------------------------------------\n")
## ----------------------------------------
cat(sprintf("Tingkat Signifikansi (α): %.2f\n", alpha))
## Tingkat Signifikansi (α): 0.01
cat(sprintf("T-Hitung: %.4f\n", t_hitung))
## T-Hitung: 1.4197
cat(sprintf("T-Kritis: %.4f\n", t_kritis))
## T-Kritis: 2.6245
cat(sprintf("P-value : %.4f\n", p_value))
## P-value : 0.0888
cat("----------------------------------------\n")
## ----------------------------------------
if (t_hitung > t_kritis) {
  cat("Keputusan: Karena T-Hitung > T-Kritis, maka Hipotesis Nol DITOLAK.\n")
} else {
  cat("Keputusan: Karena T-Hitung ≤ T-Kritis, maka Hipotesis Nol GAGAL DITOLAK.\n")
}
## Keputusan: Karena T-Hitung ≤ T-Kritis, maka Hipotesis Nol GAGAL DITOLAK.
if (p_value <= alpha) {
  cat("Dengan p-value <= α, terdapat cukup bukti bahwa metode inovatif lebih tahan abrasi.\n")
} else {
  cat("Dengan p-value > α, tidak terdapat cukup bukti bahwa metode inovatif lebih tahan abrasi.\n")
}
## Dengan p-value > α, tidak terdapat cukup bukti bahwa metode inovatif lebih tahan abrasi.

9

# Langkah 1: Masukkan semua parameter yang diketahui dari soal
mu0 <- 1100       # rata-rata suhu lama
xbar <- 1091      # rata-rata suhu dengan sistem baru
sigma <- 25       # standar deviasi populasi
n <- 40           # jumlah sampel
alpha <- 0.05     # tingkat signifikansi

# Langkah 2: Hitung statistik Z
Z <- (xbar - mu0) / (sigma / sqrt(n))
Z
## [1] -2.27684
# Langkah 3: Hitung nilai kritis Z (untuk uji satu arah kiri)
Z_kritis <- qnorm(alpha)
Z_kritis
## [1] -1.644854
# Langkah 4: Keputusan
if (Z < Z_kritis) {
  print("Tolak H0: Rata-rata suhu telah menurun secara signifikan.")
} else {
  print("Gagal tolak H0: Tidak cukup bukti bahwa suhu menurun.")
}
## [1] "Tolak H0: Rata-rata suhu telah menurun secara signifikan."

10

# Langkah 1: Masukkan data sampel ke dalam dua vektor terpisah
m1 <- c(74.97, 75.03, 74.95, 75.05, 75.00, 74.93, 75.07, 74.98, 75.02, 74.96, 75.04, 74.94, 75.06)
m2 <- c(74.98, 75.02, 75.00, 74.97, 75.03, 74.99, 75.01, 74.96, 75.04, 75.00)
alpha <- 0.10  # Tingkat signifikansi

# Langkah 2: Lakukan Uji-F untuk dua varians
# alternative = "less" karena hipotesis alternatif: var(M2) < var(M1)
hasil_uji <- var.test(m1, m2, alternative = "less")

# Langkah 3: Hitung nilai F-kritis
df1 <- length(m1) - 1  # Derajat kebebasan untuk Mesin M1
df2 <- length(m2) - 1  # Derajat kebebasan untuk Mesin M2
f_kritis <- qf(p = alpha, df1 = df1, df2 = df2, lower.tail = FALSE)

# Langkah 4: Ekstrak nilai F-hitung dan p-value
f_hitung <- hasil_uji$statistic
p_value <- hasil_uji$p.value

# Langkah 5: Tampilkan hasil uji dan interpretasi lengkap
cat("--- Hasil Uji & Interpretasi Lengkap ---\n")
## --- Hasil Uji & Interpretasi Lengkap ---
cat("Parameter Diketahui:\n")
## Parameter Diketahui:
cat(sprintf(" Ukuran Sampel M1 (n1): %d\n", length(m1)))
##  Ukuran Sampel M1 (n1): 13
cat(sprintf(" Ukuran Sampel M2 (n2): %d\n", length(m2)))
##  Ukuran Sampel M2 (n2): 10
cat(sprintf(" Varian Sampel M1: %.5f\n", var(m1)))
##  Varian Sampel M1: 0.00232
cat(sprintf(" Varian Sampel M2: %.5f\n", var(m2)))
##  Varian Sampel M2: 0.00067
cat(sprintf(" Tingkat Signifikansi (α): %.2f\n", alpha))
##  Tingkat Signifikansi (α): 0.10
cat("---\n")
## ---
cat(sprintf(" F-hitung: %.3f\n", f_hitung))
##  F-hitung: 3.475
cat(sprintf(" F-kritis: %.3f\n", f_kritis))
##  F-kritis: 2.379
cat(sprintf(" P-value: %.5f\n", p_value))
##  P-value: 0.96521
cat("---\n")
## ---
cat("Pengambilan Keputusan:\n")
## Pengambilan Keputusan:
if (f_hitung < f_kritis) {
  cat("Karena F-hitung < F-kritis, maka H0 ditolak.\n")
  cat(sprintf("Kesimpulan:\nPada taraf nyata %.1f%%, terdapat cukup bukti untuk menyatakan bahwa varians diameter piston dari Mesin M2 lebih kecil daripada Mesin M1.\n", alpha * 100))
} else {
  cat("Karena F-hitung >= F-kritis, maka H0 gagal ditolak.\n")
  cat(sprintf("Kesimpulan:\nPada taraf nyata %.1f%%, belum terdapat cukup bukti untuk menyatakan bahwa varians diameter piston dari Mesin M2 lebih kecil daripada Mesin M1.\n", alpha * 100))
  
}
## Karena F-hitung >= F-kritis, maka H0 gagal ditolak.
## Kesimpulan:
## Pada taraf nyata 10.0%, belum terdapat cukup bukti untuk menyatakan bahwa varians diameter piston dari Mesin M2 lebih kecil daripada Mesin M1.

11

# Data yang diketahui
n <- 40                 # jumlah sampel
mean_sample <- 1091    # rata-rata suhu sampel
mu0 <- 1100             # suhu rata-rata sebelumnya
sigma <- 25             # standar deviasi populasi
alpha <- 0.05           # tingkat signifikansi

# Hitung statistik Z
z <- (mean_sample - mu0) / (sigma / sqrt(n))

# Hitung p-value (uji satu arah ke kiri)
p_value <- pnorm(z)

# Tampilkan hasil
cat("Nilai z:", z, "\n")
## Nilai z: -2.27684
cat("p-value:", p_value, "\n")
## p-value: 0.01139789
# Keputusan
if (p_value < alpha) {
  cat("Kesimpulan: Tolak H0. Proses pendinginan baru efektif menurunkan suhu.\n")
} else {
  cat("Kesimpulan: Gagal menolak H0. Tidak cukup bukti bahwa proses baru.efektif.\n")
}
## Kesimpulan: Tolak H0. Proses pendinginan baru efektif menurunkan suhu.

12