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%. NO language of "break" or "true" please! PLEASE USE THE OUTLINE GIVEN BELOW TO WRITE THE CODE: # 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)? # I have given you the skeleton and some of the code... you complete it using a frequency table! # Note: In a classroom of only 23 people, the probability is about 50.7% ! # Try first with 10000 trials and then try with 100000 trials. This code runs somewhat slowly in repl.it 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 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%.
NO language of "break" or "true" please!
PLEASE USE THE OUTLINE GIVEN BELOW TO WRITE THE CODE:
# 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)?
# I have given you the skeleton and some of the code... you complete it using a frequency table!
# Note: In a classroom of only 23 people, the probability is about 50.7% !
# Try first with 10000 trials and then try with 100000 trials. This code runs somewhat slowly in repl.it
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 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 3 steps with 2 images