diff --git a/dice_stats.py b/dice_stats.py index 83a99cb..a11bd61 100644 --- a/dice_stats.py +++ b/dice_stats.py @@ -19,6 +19,20 @@ class FiveDice: return False return True + def is_three_of_a_kind(self): + faces = self.faces() + for value in range(1,7): + if faces.count(value) >= 3: + return True + return False + + def is_four_of_a_kind(self): + faces = self.faces() + for value in range(1,7): + if faces.count(value) >= 4: + return True + return False + dice = FiveDice() successes = 0 trials = 1000000 @@ -27,7 +41,21 @@ for trial in tqdm(range(trials)): if dice.all_ones(): successes += 1 -print(successes/trials) +print("All ones probability:",successes/trials) + +successes = 0 +for trial in tqdm(range(trials)): + dice.roll() + if dice.is_three_of_a_kind(): + successes += 1 +print("Three-of-a-kind probability:", successes/trials) + +successes = 0 +for trial in tqdm(range(trials)): + dice.roll() + if dice.is_four_of_a_kind(): + successes += 1 +print("Four-of-a-kind probability:", successes/trials)