from die import Die from tqdm import tqdm class FiveDice: def __init__(self): self.dice = [Die() for number in range(5)] def roll(self): for die in self.dice: die.roll() return self.faces() def faces(self): return [die.face for die in self.dice] #this is a list of all die faces def all_ones(self): for face in self.faces(): if face != 1: return False return True def is_three_of_a_kind(self): for value in range(7): instances = self.faces().count(value) if instances >= 3: return True return False def is_four_of_a_kind(self): for value in range(7): instances = self.faces().count(value) if instances >= 4: return True return False dice = FiveDice() trials = 1000000 def check_all_ones(): successes = 0 for trial in tqdm(range(trials)): dice.roll() if dice.all_ones(): successes += 1 print("All ones is") print(successes/trials) def check_3_of_a_kind(): successes=0 for trial in tqdm(range(trials)): dice.roll() if dice.is_three_of_a_kind(): successes += 1 print("Three of a Kind is") print(successes/trials) def check_4_of_a_kind(): successes=0 for trial in tqdm(range(trials)): dice.roll() if dice.is_four_of_a_kind(): successes += 1 print("Four of a Kind is") print(successes/trials) check_all_ones() check_3_of_a_kind() check_4_of_a_kind()