What is the probability that in a classroom of x people, at least 2 will be born on the same day of the year (ignore leap year)? Use a Monte Carlo Simulation and a frequency table to write a program that calculates this probability, where the number of people (x) in the simulated class is given by the user. The probability for a class of size 23, should be right around 50%. I have an outline for the code but please only use python language and NO "break", "true" language import math import random # create and initialize frequency table: ft = [] k = 0 while(k < 365) : ft.append(0) k = k+1 # Allow the user to determine class size: print("Please type in how many people are in the class: ") x= int(input()) success = 0 # Simulate: c = 0 while(c < 10000) : # Step 1: re-initialize the birthday frequency table (it must be re-initialized for each play-through (why?): k = 0 while(k < 365) : ft[k] = 0 k = k+1 # Step 2: randomly get x birthdays and update frequency table: k = 0 while(k < x): # your code goes here ########################## k = k+1 # Step 3: Check to see if this class has at least two people with same b-day and update success appropriately k = 0 while(k < 365): # your code goes here ######################### k = k+1 c = c+1 print("The probability that in a class of ", end="") print(x , end="") print(" people, at least two have the same birthday is: " , end="") print(success/10000
What is the probability that in a classroom of x people, at least 2 will be born on the same day of the year (ignore leap year)? Use a Monte Carlo Simulation and a frequency table to write a program that calculates this probability, where the number of people (x) in the simulated class is given by the user. The probability for a class of size 23, should be right around 50%.
I have an outline for the code but please only use python language and NO "break", "true" language
import math
import random
# create and initialize frequency table:
ft = []
k = 0
while(k < 365) :
ft.append(0)
k = k+1
# Allow the user to determine class size:
print("Please type in how many people are in the class: ")
x= int(input())
success = 0
# Simulate:
c = 0
while(c < 10000) :
# Step 1: re-initialize the birthday frequency table (it must be re-initialized for each play-through (why?):
k = 0
while(k < 365) :
ft[k] = 0
k = k+1
# Step 2: randomly get x birthdays and update frequency table:
k = 0
while(k < x):
# your code goes here ##########################
k = k+1
# Step 3: Check to see if this class has at least two people with same b-day and update success appropriately
k = 0
while(k < 365):
# your code goes here #########################
k = k+1
c = c+1
print("The probability that in a class of ", end="")
print(x , end="")
print(" people, at least two have the same birthday is: " , end="")
print(success/10000)
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 1 images