w3resource

Python Math: Casino simulation


70. Casino Simulation

Write a Python program for a casino simulation.

Sample Solution:

Python Code:

#https://gist.github.com/ivanGzz/243a453ba6499a49027c19cac60471f6
import random
import math

limit = 1000
acc = 0
results = []
exp = 1000


for i in range(exp):
  color = 0
  amount = 10000
  max_amount = amount
  bid = 1
  count = 0
  while count < limit and amount > 0 :
    amount = amount - bid
    next = random.randint(0, 1)
    if next == color :
      amount = amount + bid + bid
      bid = 1
      # color = 1 if color == 0 else 0
      if amount > max_amount:
        max_amount = amount
    else :
      bid = bid + bid
    count = count + 1
  acc = acc + max_amount
  results.append(max_amount)
  print("Exp {}".format(i))

avg = acc / exp
acc = 0
for i in range(len(results)):
  acc = acc + math.pow(results[i] - avg, 2)
std = math.sqrt(acc / exp)

print("Average max amount earned {} with standard deviation {}".format(avg, std))

Sample Output:

Exp 0                                                                                                         
Exp 1                                                                                                         
Exp 2                                                                                                         
Exp 3                                                                                                         
Exp 4                                                                                                         
Exp 5    
----
Exp 998                                                                                                       
Exp 999                                                                                                       
Average max amount earned 10489.705 with standard deviation 56.22367806360589 

Flowchart:

Flowchart: Casino simulation

For more Practice: Solve these Related Problems:

  • Write a Python program to simulate a casino game over 1000 rounds, tracking wins and losses, and printing the average payout and standard deviation.
  • Write a Python function that runs a casino simulation with randomized bets and outcomes, then computes overall earnings and win rates.
  • Write a Python script to simulate a slot machine game where each spin is a random event, and then calculate the total earnings after 500 spins.
  • Write a Python program to simulate multiple casino games concurrently using threading, then aggregate and print the final average earnings.

Go to:


Previous: Write a Python function to round up a number to specified digits.
Next: Write a Python program to reverse a range.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.