Tugas 1 MSR
Latihan Mandiri 1 MSR
Adriano Excel Putra - G1401221020
Soal 1
Dalam sebuah kelompok berisi 10 orang, terdapat 4 orang yang mahir dan 6 orang pemula. Sebuah tim dengan 5 anggota akan dipilih secara acak.
- Buat simulasi pemilihan tim sebanyak 1000 kali.
- Hitung rata-rata jumlah anggota mahir dalam tim berdasarkan simulasi tersebut.
- Gambarkan barchart hasil simulasi.
Fungsi yang akan digunakan akan fokus pada jumlah anggota Mahir yang terpilih , sehingga fungsinya akan fokus ke jumlah anggota mahir, Dengan demikian fungsinya adalah sebagai
Fungsi
# Fungsi untuk simulasi pemilihan tim
SimTim = function() {
anggota = c(rep("Mahir", 4), rep("Pemula", 6)) # Mahir = 4, Pemula = 6
tim = sample(anggota, 5, replace = FALSE)
return(sum(tim == "Mahir")) # Jumlah anggota mahir dalam tim
}
# Jalankan simulasi 1000 kali
set.seed(123)
hasil = replicate(1000, SimTim())
rata_rata_mahir = mean(hasil)
cat("Rata-rata jumlah anggota mahir dalam tim:", rata_rata_mahir, "\n")## Rata-rata jumlah anggota mahir dalam tim: 2.009
Sehingga dapat dikatakan dengan 1000 kali pengulangan, jumlah orang yang mahir disuatu tim adalah ~~ 2 orang
Soal 2
Dalam sebuah lotere, terdapat 100 tiket dengan nomor dari 1 hingga 100. Dari total tiket, hanya 10 tiket yang merupakan tiket pemenang.
Simulasikan pengambilan tiket secara acak sebanyak 3 kali tanpa pengembalian.
Tentukan apakah salah satu tiket yang diambil adalah tiket pemenang.
Ulangi simulasi sebanyak 1000 kali, hitung peluang mendapatkan setidaknya 1 tiket pemenang.
Fungsi
set.seed(123)
SimLotre= function(){
#Pengambilan 3 tiket tanpa pengembelaian dari 100 tiket
Tiket=sample(1:100,3,replace=FALSE)
#Misal 1-10 adalah Tiket Pemenang, Cek apakah salah satu tiket yang diambil adalah tiket pemenang
pemenang= any(Tiket %in% 1:10)
return (pemenang)
}
# Simulasi Pengambilan 1000 kali
n=1000
Hasillotre= replicate(n, SimLotre())
# Peluang mendapatkan 1 tiket
Peluang= mean(Hasillotre)
# Menampilkan hasil
cat("Peluang mendapatkan setidaknya 1 tiket pemenang adalah :", Peluang, "\n")## Peluang mendapatkan setidaknya 1 tiket pemenang adalah : 0.261
Fungsi juga dapat dibuat dengan memisahkan terlebih dahulu 90 tiket biasa dan 10 tiket jacpot
# Fungsi untuk simulasi lotere
SimulasiLotere = function() {
tiket = c(rep("Biasa", 90),rep("Jackpot", 10)) # 10 tiket Jackpot, 90 tiket biasa
pilihan = sample(tiket, 3, replace = FALSE)
return(any(pilihan == "Jackpot")) # Apakah ada tiket pemenang
}
# Jalankan simulasi 1000 kali
set.seed(123)
hasiljackpot = replicate(1000, SimulasiLotere())
peluang_menang = mean(hasiljackpot)
cat("Peluang mendapatkan setidaknya 1 tiket pemenang:", peluang_menang, "\n")## Peluang mendapatkan setidaknya 1 tiket pemenang: 0.279
Soal 3
Sebuah permainan domino menggunakan kartu bernomor 1 hingga 12. Saat kartu pertama diambil, kartu kedua runtuh jika nomor kartu pertama adalah kelipatan dari nomor kartu kedua.
- Buat simulasi mengambil 2 kartu acak dari tumpukan (tanpa pengembalian).
- Tentukan apakah kartu kedua akan runtuh.
- Ulangi simulasi sebanyak 500 kali, hitung berapa kali kartu kedua runtuh, dan hitung peluang runtuhnya kartu kedua.
Fungsi
simdom= function(){
domino= sample(1:12,2,replace=FALSE)
#Tambahkan logika untuk melihat kondisi kartu kedua
if (domino[1] %% domino[2]==0 ){
return(1) # Kartu kedua akan runtuh
} else {
return (0) # Kartu kedua stay
}
}
set.seed(100)
# Lakukan simulasi sebanyak 500 kali
Simulasi = replicate(500,simdom())
peluangdom= mean(Simulasi)
cat("Jumlah runtuhnya kartu kedua:", sum(Simulasi), "\n")## Jumlah runtuhnya kartu kedua: 92
## Peluang kartu kedua runtuh: 0.184