Problem You are to develop a program that simulates playing

Problem: You are to develop a program that simulates playing roulette.

The roulette wheel will be a modified version of an actual roulette wheel. It will only contain the numbers 0 - 36 (no 00). 0 is neither even, nor odd, nor red, nor black. The numbers 1-36 are associated with a color; either red or black (see http://www.predictem.com/images/roulette.gif).

The gambler will have the option of placing a maximum of 8 bets on the table per “spin”. The bets may be of any of the following types:

• Single number (0-36) – pays $35 for each $1 bet

• Red or black – pays $1 for each $1 bet

• Odd or even - pays $1 for each $1 bet

• First 12 (1-12), second 12 (13-24), or third 12 (25-36) - pays $2 for each $1 bet

• First half (1-18) or second half (19-36) - pays $1 for each $1 bet

• First column (1,4,7,10,13,16,19,22,25,28,31,34),

second column (2,5,8,11,14,17,20,23,26,29,32,35),

third column (3,6,9,12,15,18,21,24,27,30,33,36) – all columns pay $2 for each $1 bet

Please note that everything the gambler wins is in excess of the current bet. If a gambler bets $2 on a single number and wins he/she keeps the $2 bet and the casino gives him/her $70.

All information concerning the bets (type of bet, amount of bet, net gain, etc.) will be held in a dynamic array (possibly a multi-dimensional array). This array should be destroyed after each spin and a new one created for the next series of bets. The size of the array is determined by the number of bets placed per spin.

The gambler may never place a bet that would cause him/her to have negative dollars. The program should keep track of all bets placed for a spin and never let the gambler bet more than he/she has available. For example, if the gambler tries to place 4 bets and the third bet exceeds the amount of money available, that bet and all future bets that round are voided. The bet which exceeds the available amount should be set to 0 and the gambler should not be prompted for any more bets for that spin.

After collecting the bets from the gambler, spin the roulette wheel and determine the net gain of the gambler. Each spin should be a randomly generated number from 0 – 36. The gambler may leave the table after any spin. Once a bet is placed, the gambler must wait until the outcome of the spin to stop.   

Input: To begin, the gambler should enter the amount of money available to play. Limit the maximum amount of money to begin at 10,000 dollars. The gambler must enter a number greater than zero. For each spin, your program should ask for the number of bets to be placed. For each bet placed, you should ask the type of bet and the amount of the bet. I recommend some type of menu system for the type of bet. Every bet must be a positive, whole number greater than zero, and the maximum bet is $500. If the gambler enters a floating point number for the bet, your program should handle it gracefully. How you handle it is up to you; just make sure the program doesn’t crash. After a spin, give the gambler the option to bet again or walk away.

Output: After each bet, display the amount of money left. All output pertaining to money should display the amount in whole dollars (no decimals needed) with a dollar sign. After a spin, indicate the net gain from the bets for that spin and the current amount of money the gambler has.

When the gambler leaves the table, thank the gambler for playing and display the total amount of winnings (or losses). For example, if the player started with $1000 and left the table with $1200, indicate the player won $200.

Miscellaneous: This program should use functions. There is no minimum or maximum. Remember that functions are there to do specific tasks. There should be minimal code in your main function other than function calls. As stated previously, your program must use dynamic arrays for the bets. The array must also be destroyed before another dynamic array is created

Solution

#Roulette.py
# The purpose of this program is to simulate a game of \'Roulette\'.
# CS110 final project
# By Matthew Pennisi

from random import randrange
from Tkinter import *

class Roulette:
def __init__(self, slots):
self.slots = slots
self.value = 1

def spin(self):
self.value = randrange(1, self.slots+1)

def getValue(self):
return self.value

class CurrentFunds:
def __init__(self):
self.value = 300

def getValue(self):
return self.value

def increase(self, add):
self.value = self.value + add
  
def decrease(self, minus):
self.value = self.value - minus
  
  
def cashOut(bet, spin, x, y):

#Callback for the Error box.
def errorWindow():
root = Tk()
root.title(\'Error\')
outsideTable(root)
root.mainloop()

currentFunds = CurrentFunds()
  
#These coordinates are outside the table on the canvas.
if (x<11 or x>389 or y<15 or y>215) or \\
(x>11 and x<38 and y>165 and y<215) or \\
(x>362 and x<389 and y>165 and y<215):
errorWindow() #Error box appears.

#These coordinates find which space was bet on.
elif x>11 and x<389 and y>15 and y<215:
#The 00 Rectangle.
if x>11 and x<38 and y>15 and y<90:
if spin == 1:
increase = (38 * bet) - bet
currentFunds.increase(increase)
#print statement is to see if the accumulator works, which it currently isn\'t.
#It only increases/decreases once, instead of for each bet.
#These will be taken out for the final product.
print currentFunds.getValue()
else:
decrease = bet
currentFunds.decrease(decrease)
#print statement is to see if the accumulator works, which it currently isn\'t.
#It only increases/decreases once, instead of for each bet.
#These will be taken out for the final product.
print currentFunds.getValue()
#The 0 Rectangle.
elif x>11 and x<38 and y>90 and y<165:
if spin == 2:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
  
#Rectangles 1 - 36.
elif x>38 and x<65 and y>115 and y<165:
if spin == 3:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>38 and x<65 and y>65 and y<115:
if spin == 4:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>38 and x<65 and y>15 and y<65:
if spin == 5:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>65 and x<92 and y>115 and y<165:
if spin == 6:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>65 and x<92 and y>65 and y<115:
if spin == 7:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>65 and x<92 and y>15 and y<65:
if spin == 8:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>92 and x<119 and y>115 and y<165:
if spin == 9:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>92 and x<119 and y>65 and y<115:
if spin == 10:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>92 and x<119 and y>15 and y<65:
if spin == 11:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>119 and x<146 and y>115 and y<165:
if spin == 12:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>119 and x<146 and y>65 and y<115:
if spin == 13:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>119 and x<146 and y>15 and y<65:
if spin == 14:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>146 and x<173 and y>115 and y<165:
if spin == 15:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>146 and x<173 and y>65 and y<115:
if spin == 16:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>146 and x<173 and y>15 and y<65:
if spin == 17:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>173 and x<200 and y>115 and y<165:
if spin == 18:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>173 and x<200 and y>65 and y<115:
if spin == 19:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>173 and x<200 and y>15 and y<65:
if spin == 20:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>200 and x<227 and y>115 and y<165:
if spin == 21:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>200 and x<227 and y>65 and y<115:
if spin == 22:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>200 and x<227 and y>15 and y<65:
if spin == 23:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>227 and x<254 and y>115 and y<165:
if spin == 24:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>227 and x<254 and y>65 and y<115:
if spin == 25:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>227 and x<254 and y>15 and y<65:
if spin == 26:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>254 and x<281 and y>115 and y<165:
if spin == 27:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>254 and x<281 and y>65 and y<115:
if spin == 28:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>254 and x<281 and y>15 and y<65:
if spin == 29:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>281 and x<308 and y>115 and y<165:
if spin == 30:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>281 and x<308 and y>65 and y<115:
if spin == 31:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>281 and x<308 and y>15 and y<65:
if spin == 32:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>308 and x<335 and y>115 and y<165:
if spin == 33:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>308 and x<335 and y>65 and y<115:
if spin == 34:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>308 and x<335 and y>15 and y<65:
if spin == 35:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>335 and x<362 and y>115 and y<165:
if spin == 36:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>335 and x<362 and y>65 and y<115:
if spin == 37:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>335 and x<362 and y>15 and y<65:
if spin == 38:
gainOrLoss =(38 * bet) - bet
else:
gainOrLoss = -(bet)
  
#The three 2 to 1 Rectangles.
elif x>362 and x<389 and y>115 and y<165:
if spin == 3 or spin == 6 or spin == 9 or spin == 12 or spin == 15 or spin == 18 \\
or spin == 21 or spin == 24 or spin == 27 or spin == 30 or spin == 33 or spin == 36:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>362 and x<389 and y>65 and y<115:
if spin == 4 or spin == 7 or spin == 10 or spin == 13 or spin == 16 or spin == 19 \\
or spin == 22 or spin == 25 or spin == 28 or spin == 31 or spin == 34 or spin == 37:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>362 and x<389 and y>15 and y<65:
if spin == 5 or spin == 8 or spin == 11 or spin == 14 or spin == 17 or spin == 20 \\
or spin == 23 or spin == 26 or spin == 29 or spin == 32 or spin == 35 or spin == 38:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)
  
#First 12, Second 12, Third 12 Rectangles.
elif x>38 and x<146 and y>165 and y<190:
if spin == 3 or spin == 4 or spin == 5 or spin == 6 or spin == 7 or spin == 8 \\
or spin == 9 or spin == 10 or spin == 11 or spin == 12 or spin == 13 or spin == 14:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>146 and x<254 and y>165 and y<190:
if spin == 15 or spin == 16 or spin == 17 or spin == 18 or spin == 19 or spin == 20 \\
or spin == 21 or spin == 22 or spin == 23 or spin == 24 or spin == 25 or spin == 26:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>254 and x<362 and y>165 and y<190:
if spin == 27 or spin == 28 or spin == 29 or spin == 30 or spin == 31 or spin == 32 \\
or spin == 33 or spin == 34 or spin == 35 or spin == 36 or spin == 37 or spin == 38:
gainOrLoss =(3 * bet) - bet
else:
gainOrLoss = -(bet)

#Bottom row of rectangles (1-18, Even, Black, Red, Odd, 19-36).
elif x>38 and x<92 and y>190 and y<215:
if spin == 3 or spin == 4 or spin == 5 or spin == 6 or spin == 7 or spin == 8 or spin == 9 \\
or spin == 10 or spin == 11 or spin == 12 or spin == 13 or spin == 14 or spin == 15 \\
or spin == 16 or spin == 17 or spin == 18 or spin == 19 or spin == 20:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>92 and x<146 and y>190 and y<215:
if spin == 4 or spin == 6 or spin == 8 or spin == 10 or spin == 12 or spin == 14 or spin == 16 \\
or spin == 18 or spin == 20 or spin == 22 or spin == 24 or spin == 26 or spin == 28 \\
or spin == 30 or spin == 32 or spin == 34 or spin == 36 or spin == 38:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>146 and x<200 and y>190 and y<215:
if spin == 4 or spin == 6 or spin == 8 or spin == 10 or spin == 12 or spin == 13 or spin == 15 \\
or spin == 17 or spin == 19 or spin == 22 or spin == 24 or spin == 26 or spin == 28 \\
or spin == 30 or spin == 31 or spin == 33 or spin == 35 or spin == 37:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>200 and x<254 and y>190 and y<215:
if spin == 3 or spin == 5 or spin == 7 or spin == 9 or spin == 11 or spin == 14 or spin == 16 \\
or spin == 18 or spin == 20 or spin == 21 or spin == 23 or spin == 25 or spin == 27 \\
or spin == 29 or spin == 32 or spin == 34 or spin == 36 or spin == 38:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>254 and x<308 and y>190 and y<215:
if spin == 3 or spin == 5 or spin == 7 or spin == 9 or spin == 11 or spin == 13 or spin == 15 \\
or spin == 17 or spin == 19 or spin == 21 or spin == 23 or spin == 25 or spin == 27 \\
or spin == 29 or spin == 31 or spin == 33 or spin == 35 or spin == 37:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
elif x>308 and x<362 and y>190 and y<215:
if spin == 21 or spin == 22 or spin == 23 or spin == 24 or spin == 25 or spin == 26 or spin == 27 \\
or spin == 28 or spin == 29 or spin == 30 or spin == 31 or spin == 32 or spin == 33 or \\
spin == 34 or spin == 35 or spin == 36 or spin == 37 or spin == 38:
gainOrLoss =(2 * bet) - bet
else:
gainOrLoss = -(bet)
  
  
def addWidgets(root):
#Get the coordinates for the mouse click.
def click(event):
#This next line is just to make sure the coordinates are correct, it will be removed for the final product.
print \"Canvas clicked at\", event.x, event.y
x, y = event.x, event.y
spinRoulette(x, y) #Sends the mouse coordinates to spinRoulette.
  
def invalidWindow():
root = Tk()
root.title(\'Error\')
invalidBet(root)
root.mainloop()

def infoWindow():
root = Tk()
root.title(\'Information About The Game\')
addInfo(root)
root.mainloop()
  
def spinRoulette(x, y,):
bet = float(betEntry.get())
wheel = Roulette(38)
wheel.spin()
#result represents what the Roulette landed on.
result = wheel.getValue()
if bet <= 0:
invalidWindow()
elif bet > 0:
if result == 1:
resultLabel.config(text = \'The Roulette landed on 00\')
elif result == 2:
resultLabel.config(text = \'The Roulette landed on 0\')
elif result == 3:
resultLabel.config(text = \'The Roulette landed on 1\')
elif result == 4:
resultLabel.config(text = \'The Roulette landed on 2\')
elif result == 5:
resultLabel.config(text = \'The Roulette landed on 3\')
elif result == 6:
resultLabel.config(text = \'The Roulette landed on 4\')
elif result == 7:
resultLabel.config(text = \'The Roulette landed on 5\')
elif result == 8:
resultLabel.config(text = \'The Roulette landed on 6\')
elif result == 9:
resultLabel.config(text = \'The Roulette landed on 7\')
elif result == 10:
resultLabel.config(text = \'The Roulette landed on 8\')
elif result == 11:
resultLabel.config(text = \'The Roulette landed on 9\')
elif result == 12:
resultLabel.config(text = \'The Roulette landed on 10\')
elif result == 13:
resultLabel.config(text = \'The Roulette landed on 11\')
elif result == 14:
resultLabel.config(text = \'The Roulette landed on 12\')
elif result == 15:
resultLabel.config(text = \'The Roulette landed on 13\')
elif result == 16:
resultLabel.config(text = \'The Roulette landed on 14\')
elif result == 17:
resultLabel.config(text = \'The Roulette landed on 15\')
elif result == 18:
resultLabel.config(text = \'The Roulette landed on 16\')
elif result == 19:
resultLabel.config(text = \'The Roulette landed on 17\')
elif result == 20:
resultLabel.config(text = \'The Roulette landed on 18\')
elif result == 21:
resultLabel.config(text = \'The Roulette landed on 19\')
elif result == 22:
resultLabel.config(text = \'The Roulette landed on 20\')
elif result == 23:
resultLabel.config(text = \'The Roulette landed on 21\')
elif result == 24:
resultLabel.config(text = \'The Roulette landed on 22\')
elif result == 25:
resultLabel.config(text = \'The Roulette landed on 23\')
elif result == 26:
resultLabel.config(text = \'The Roulette landed on 24\')
elif result == 27:
resultLabel.config(text = \'The Roulette landed on 25\')
elif result == 28:
resultLabel.config(text = \'The Roulette landed on 26\')
elif result == 29:
resultLabel.config(text = \'The Roulette landed on 27\')
elif result == 30:
resultLabel.config(text = \'The Roulette landed on 28\')
elif result == 31:
resultLabel.config(text = \'The Roulette landed on 29\')
elif result == 32:
resultLabel.config(text = \'The Roulette landed on 30\')
elif result == 33:
resultLabel.config(text = \'The Roulette landed on 31\')
elif result == 34:
resultLabel.config(text = \'The Roulette landed on 32\')
elif result == 35:
resultLabel.config(text = \'The Roulette landed on 33\')
elif result == 36:
resultLabel.config(text = \'The Roulette landed on 34\')
elif result == 37:
resultLabel.config(text = \'The Roulette landed on 35\')
elif result == 38:
resultLabel.config(text = \'The Roulette landed on 36\')
cashOut(bet, result, x, y)

#Input information Widgets.
bettingFrame = Frame(root)
bettingFrame.pack()
  
betLabel = Label(bettingFrame, text = \'Please enter a bet amount\', \\
fg = \'black\')
betLabel.pack()

currentFundsLabel = Label(bettingFrame, text = \'You currently have $300.00\')
currentFundsLabel.pack()

resultLabel = Label(bettingFrame, text = \'\')
resultLabel.pack()

dollarSignLabel = Label(bettingFrame, text = \'$\')
dollarSignLabel.pack(side=LEFT)
  
betEntry = Entry(bettingFrame, width = 10)
betEntry.insert(0, 0)
betEntry.pack(side=LEFT)

  

#Create the canvas.
rouletteTable = Canvas(root, width=400, height=230, bg = \'dark green\')
rouletteTable.pack(fill=BOTH)
  
#Create optimal colors for red and blue.
blueColor = \"#%02X%02X%02X\" % (0, 72, 76)
redColor = \"#%02X%02X%02X\" % (222, 4, 4)

#Coordinates for the Roulette Table.
#These are all assigned variables so that is it easier to decipher which
#rectangle on the Roulette table is being represented.
_00 = rouletteTable.create_rectangle(11,15,38,90, fill=blueColor, outline=\'white\', width=3)
_0 = rouletteTable.create_rectangle(11,90,38,165, fill=blueColor, outline=\'white\', width=3)
  
_1 = rouletteTable.create_rectangle(38,115,65,165, fill=redColor, outline=\'white\', width=3)
_2 = rouletteTable.create_rectangle(38,65,65,115, fill=\'black\', outline=\'white\', width=3)
_3 = rouletteTable.create_rectangle(38,15,65,65, fill=redColor, outline=\'white\', width=3)
  
_4 = rouletteTable.create_rectangle(65,115,92,165, fill=\'black\', outline=\'white\', width=3)
_5 = rouletteTable.create_rectangle(65,65,92,115, fill=redColor, outline=\'white\', width=3)
_6 = rouletteTable.create_rectangle(65,15,92,65, fill=\'black\', outline=\'white\', width=3)

_7 = rouletteTable.create_rectangle(92,115,119,165, fill=redColor, outline=\'white\', width=3)
_8 = rouletteTable.create_rectangle(92,65,119,115, fill=\'black\', outline=\'white\', width=3)
_9 = rouletteTable.create_rectangle(92,15,119,65, fill=redColor, outline=\'white\', width=3)
  
_10 = rouletteTable.create_rectangle(119,115,146,165, fill=\'black\', outline=\'white\', width=3)
_11 = rouletteTable.create_rectangle(119,65,146,115, fill=\'black\', outline=\'white\', width=3)
_12 = rouletteTable.create_rectangle(119,15,146,65, fill=redColor, outline=\'white\', width=3)
  
_13 = rouletteTable.create_rectangle(146,115,173,165, fill=\'black\', outline=\'white\', width=3)
_14 = rouletteTable.create_rectangle(146,65,173,115, fill=redColor, outline=\'white\', width=3)
_15 = rouletteTable.create_rectangle(146,15,173,65, fill=\'black\', outline=\'white\', width=3)
  
_16 = rouletteTable.create_rectangle(173,115,200,165, fill=redColor, outline=\'white\', width=3)
_17 = rouletteTable.create_rectangle(173,65,200,115, fill=\'black\', outline=\'white\', width=3)
_18 = rouletteTable.create_rectangle(173,15,200,65, fill=redColor, outline=\'white\', width=3)
  
_19 = rouletteTable.create_rectangle(200,115,227,165, fill=redColor, outline=\'white\', width=3)
_20 = rouletteTable.create_rectangle(200,65,227,115, fill=\'black\', outline=\'white\', width=3)
_21 = rouletteTable.create_rectangle(200,15,227,65, fill=redColor, outline=\'white\', width=3)
  
_22 = rouletteTable.create_rectangle(227,115,254,165, fill=\'black\', outline=\'white\', width=3)
_23 = rouletteTable.create_rectangle(227,65,254,115, fill=redColor, outline=\'white\', width=3)
_24 = rouletteTable.create_rectangle(227,15,254,65, fill=\'black\', outline=\'white\', width=3)
  
_25 = rouletteTable.create_rectangle(254,115,281,165, fill=redColor, outline=\'white\', width=3)
_26 = rouletteTable.create_rectangle(254,65,281,115, fill=\'black\', outline=\'white\', width=3)
_27 = rouletteTable.create_rectangle(254,15,281,65, fill=redColor, outline=\'white\', width=3)
  
_28 = rouletteTable.create_rectangle(281,115,308,165, fill=\'black\', outline=\'white\', width=3)
_29 = rouletteTable.create_rectangle(281,65,308,115, fill=\'black\', outline=\'white\', width=3)
_30 = rouletteTable.create_rectangle(281,15,308,65, fill=redColor, outline=\'white\', width=3)
  
_31 = rouletteTable.create_rectangle(308,115,335,165, fill=\'black\', outline=\'white\', width=3)
_32 = rouletteTable.create_rectangle(308,65,335,115, fill=redColor, outline=\'white\', width=3)
_33 = rouletteTable.create_rectangle(308,15,335,65, fill=\'black\', outline=\'white\', width=3)
  
_34 = rouletteTable.create_rectangle(335,115,362,165, fill=redColor, outline=\'white\', width=3)
_35 = rouletteTable.create_rectangle(335,65,362,115, fill=\'black\', outline=\'white\', width=3)
_36 = rouletteTable.create_rectangle(335,15,362,65, fill=redColor, outline=\'white\', width=3)
  
first12 = rouletteTable.create_rectangle(38,165,146,190, fill=blueColor, outline=\'white\', width=3)
second12 = rouletteTable.create_rectangle(146,165,254,190, fill=blueColor, outline=\'white\', width=3)
third12 = rouletteTable.create_rectangle(254,165,362,190, fill=blueColor, outline=\'white\', width=3)
  
oneToEight = rouletteTable.create_rectangle(38,215,92,190, fill=blueColor, outline=\'white\', width=3)
even = rouletteTable.create_rectangle(92,215,146,190, fill=blueColor, outline=\'white\', width=3)
black = rouletteTable.create_rectangle(146,215,200,190, fill=blueColor, outline=\'white\', width=3)
red = rouletteTable.create_rectangle(200,215,254,190, fill=blueColor, outline=\'white\', width=3)
odd = rouletteTable.create_rectangle(254,215,308,190, fill=blueColor, outline=\'white\', width=3)
nineteenToThirtysix = rouletteTable.create_rectangle(308,215,362,190, fill=blueColor, outline=\'white\', width=3)
  
twoToOne_1 = rouletteTable.create_rectangle(362,115,389,165, fill=blueColor, outline=\'white\', width=3)
twoToOne_2 = rouletteTable.create_rectangle(362,65,389,115, fill=blueColor, outline=\'white\', width=3)
twoToOne_3 = rouletteTable.create_rectangle(362,15,389,65, fill=blueColor, outline=\'white\', width=3)

#Text to go into each rectangle.
rouletteTable.create_text(25, 57, text=\'00\', fill=\'white\')
rouletteTable.create_text(25, 132, text=\'0\', fill=\'white\')

rouletteTable.create_text(52, 140, text=\'1\', fill=\'white\')
rouletteTable.create_text(52, 90, text=\'2\', fill=\'white\')
rouletteTable.create_text(52, 40, text=\'3\', fill=\'white\')

rouletteTable.create_text(79, 140, text=\'4\', fill=\'white\')
rouletteTable.create_text(79, 90, text=\'5\', fill=\'white\')
rouletteTable.create_text(79, 40, text=\'6\', fill=\'white\')

rouletteTable.create_text(106, 140, text=\'7\', fill=\'white\')
rouletteTable.create_text(106, 90, text=\'8\', fill=\'white\')
rouletteTable.create_text(106, 40, text=\'9\', fill=\'white\')

rouletteTable.create_text(133, 140, text=\'10\', fill=\'white\')
rouletteTable.create_text(133, 90, text=\'11\', fill=\'white\')
rouletteTable.create_text(133, 40, text=\'12\', fill=\'white\')

rouletteTable.create_text(160, 140, text=\'13\', fill=\'white\')
rouletteTable.create_text(160, 90, text=\'14\', fill=\'white\')
rouletteTable.create_text(160, 40, text=\'15\', fill=\'white\')

rouletteTable.create_text(187, 140, text=\'16\', fill=\'white\')
rouletteTable.create_text(187, 90, text=\'17\', fill=\'white\')
rouletteTable.create_text(187, 40, text=\'18\', fill=\'white\')

rouletteTable.create_text(214, 140, text=\'19\', fill=\'white\')
rouletteTable.create_text(214, 90, text=\'20\', fill=\'white\')
rouletteTable.create_text(214, 40, text=\'21\', fill=\'white\')

rouletteTable.create_text(241, 140, text=\'22\', fill=\'white\')
rouletteTable.create_text(241, 90, text=\'23\', fill=\'white\')
rouletteTable.create_text(241, 40, text=\'24\', fill=\'white\')

rouletteTable.create_text(268, 140, text=\'25\', fill=\'white\')
rouletteTable.create_text(268, 90, text=\'26\', fill=\'white\')
rouletteTable.create_text(268, 40, text=\'27\', fill=\'white\')

rouletteTable.create_text(295, 140, text=\'28\', fill=\'white\')
rouletteTable.create_text(295, 90, text=\'29\', fill=\'white\')
rouletteTable.create_text(295, 40, text=\'30\', fill=\'white\')

rouletteTable.create_text(322, 140, text=\'31\', fill=\'white\')
rouletteTable.create_text(322, 90, text=\'32\', fill=\'white\')
rouletteTable.create_text(322, 40, text=\'33\', fill=\'white\')

rouletteTable.create_text(349, 140, text=\'34\', fill=\'white\')
rouletteTable.create_text(349, 90, text=\'35\', fill=\'white\')
rouletteTable.create_text(349, 40, text=\'36\', fill=\'white\')

rouletteTable.create_text(92, 178, text=\'~First 12~\', fill=\'white\')
rouletteTable.create_text(200, 178, text=\'~Second 12~\', fill=\'white\')
rouletteTable.create_text(308, 178, text=\'~Third 12~\', fill=\'white\')

rouletteTable.create_text(65, 205, text=\'1 to 18\', fill=\'white\')
rouletteTable.create_text(119, 205, text=\'Even\', fill=\'white\')
rouletteTable.create_rectangle(153,197,193,210, fill=\'black\', outline=\'white\', width=2)
rouletteTable.create_rectangle(207,197,247,210, fill=redColor, outline=\'white\', width=2)
rouletteTable.create_text(281, 205, text=\'Odd\', fill=\'white\')
rouletteTable.create_text(335, 205, text=\'19 to 36\', fill=\'white\')

rouletteTable.create_text(376, 140, text=\'2\ to\ 1\', fill=\'white\')
rouletteTable.create_text(376, 90, text=\'2\ to\ 1\', fill=\'white\')
rouletteTable.create_text(376, 40, text=\'2\ to\ 1\', fill=\'white\')

#Separate information window button.
infoButton = Button(root, text = \'Info\')
infoButton.config(command = infoWindow)
infoButton.pack(side=BOTTOM)

#############################################
## ##
## This is where the problem is. ##
## ##
#############################################

currentFunds = CurrentFunds()
currentFunds.getValue()

while currentFunds.getValue() > 0:
rouletteTable.bind(\"<Button-1>\", click)
currentFundsLabel.config(text = \"You currently have $\" + str(currentFunds.getValue()))   
currentFunds.getValue()
print currentFunds.getValue()
#############################################
## ##
## This is where the problem is. ##
## ##
#############################################
  
def addInfo(root):
#Text to appear in information window.
infoFrame = Frame(root)
infoFrame.pack()
  
greetLabel = Label(infoFrame, text = \'This is a simulation of the casino game \"Roulette\" \ \')
greetLabel.pack()

requirementsLabel = Label(infoFrame, text = \'In this simulation you can play until you either:\ \' \\
\' -Get tired of playing \ \' \\
\' -Run out of money \ \')
requirementsLabel.pack()

rulesLabel1 = Label(root, text = \'You have been given $300 to start playing. \ \' \\
\'First enter the amount you would like to bid in the \ \' \\
\'entry box, then use your mouse to click the area of \ \' \\
\'the Roulette table that you would like to bid on.\ \' \\
\'Once you click the table, the Roulette will spin. \ \')
rulesLabel1.pack()

def outsideTable(root):
  
def stop():
root.destroy()
  
resultLabel = Label(root, text = \'You did not click inside the table\')
resultLabel.pack()

closeButton = Button(root, text = \'Close\')
closeButton.config(command = stop)
closeButton.pack()

def invalidBet(root):
  
def stop():
root.destroy()
  
resultLabel = Label(root, text = \'Invalid bet amount\')
resultLabel.pack()

closeButton = Button(root, text = \'Close\')
closeButton.config(command = stop)
closeButton.pack()

def main():
root = Tk()
root.title(\'Roulette\')
root.geometry(\'400x335\')
root.config(bg = \'dark green\')
addWidgets(root)
root.mainloop()

main()

Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c
Problem: You are to develop a program that simulates playing roulette. The roulette wheel will be a modified version of an actual roulette wheel. It will only c

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site