เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การแข่งพนันระหว่าง Tom กับ Eva

ถึงเวลาเล่นเกมระหว่าง Tom กับ Eva แล้ว!

ทบทวนกันสักนิด — Tom มีลูกเต๋า 6 หน้าทั่วไป ผลที่ได้จากการทอยจะเป็นไปตาม discrete uniform distribution ในช่วง 1 ถึง 6 ส่วน Eva มีเหรียญที่ลำเอียง โดยมีความน่าจะเป็น p ที่จะออกหัว จำนวนครั้งที่ Eva ต้องโยนเหรียญจนได้หัวจะเป็นไปตาม geometric distribution

กติกาของเกมนี้มีดังนี้:

  • คะแนนของ Tom: ค่าที่ได้จากการทอยลูกเต๋า
  • คะแนนของ Eva: จำนวนครั้งที่ต้องโยนเหรียญจนได้หัว
  • ผู้ที่ได้คะแนนสูงกว่าจะเป็นผู้ชนะ

โจทย์ของคุณคือการจำลองเกมนี้! สำหรับรายการค่า p ที่เป็นไปได้ [0.1, 0.2, 0.3, 0.5, 0.7, 0.8, 0.9] ซึ่งแทนความน่าจะเป็นที่เหรียญของ Eva จะออกหัว คิดว่าใครจะชนะ?

มีการนำเข้า NumPy เป็น np และโมดูล stats ของ SciPy เป็น st แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Monte Carlo Simulations ใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • จำลองการทอยลูกเต๋าของ Tom จำนวน 10,000 ครั้ง แล้วกำหนดผลลัพธ์ให้กับตัวแปร die_samples
  • จำลองการโยนเหรียญของ Eva จนได้หัว จำนวน 10,000 ครั้ง แล้วกำหนดผลลัพธ์ให้กับตัวแปร coin_samples

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

for p in [0.1, 0.2, 0.3, 0.5, 0.7, 0.8, 0.9]: 
    low = 1
    high = 7
	# Simulate rolling Tom's die 10,000 times
    die_samples = ____
	# Simulate Eva's coin flips to land heads 10,000 times
    coin_samples = ____
    diff = np.mean(die_samples - coin_samples)
    print(diff)
แก้ไขและรันโค้ด