ค่าที่ทราบสามค่า
ในแบบฝึกหัดนี้ เราจะจำลองความน่าจะเป็นของการเดารหัสผ่านได้ถูกต้อง เมื่อรหัสผ่านประกอบด้วยตัวเลขที่แตกต่างกันสามตัว โดยมีหนึ่งค่าที่ถูกใช้ซ้ำ
สมมติว่ารอยเปื้อนบนหน้าจออยู่ที่ตัวเลข 2, 4 และ 7 โดยมีค่าหนึ่งในจำนวนนี้ถูกใช้ซ้ำในรหัสผ่าน แต่เราไม่ทราบว่าเป็นค่าใด และไม่ทราบว่าค่าที่ซ้ำนั้นอยู่ในตำแหน่งใดของรหัสผ่าน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Probability Puzzles in R
คำแนะนำการฝึกหัด
- เก็บค่าที่ทราบทั้งสามลงในตัวแปรชื่อ
unique_values - สร้างออบเจกต์ที่มีค่าทั้งหมดสี่ค่า โดยเลือกค่าหนึ่งจาก
unique_valuesแบบสุ่มมาเป็นค่าที่ซ้ำ แล้วรวมเข้ากับunique_valuesจากนั้นเก็บไว้ในชื่อall_values - ทำการเดาโดยสุ่มเลือกจากออบเจกต์ที่มีค่าทั้งสี่ค่า
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
counter <- 0
# Store known values
unique_values <- ___
for(i in 1:10000){
# Pick repeated value
all_values <- c(unique_values, ___)
# Make guess
guess <- ___
if(identical(passcode, ___)){
counter <- counter + 1
}
}
print(counter / 10000)