Bonjour,j'ai un programme qui simule le fonctionnement d'un casino à réaliser.Voici les règles:
Le joueur mise sur un numéro compris entre 0 et 49 (50 numéros en tout). En choisissant son numéro, il y dépose la somme qu'il souhaite miser.
La roulette est constituée de 50 cases allant naturellement de 0 à 49. Les numéros pairs sont de couleur noire, les numéros impairs sont de couleur rouge. Le croupier lance la roulette, lâche la bille et quand la roulette s'arrête, relève le numéro de la case dans laquelle la bille s'est arrêtée. Dans notre programme, nous ne reprendrons pas tous ces détails « matériels » mais ces explications sont aussi à l'intention de ceux qui ont eu la chance d'éviter les salles de casino jusqu'ici. Le numéro sur lequel s'est arrêtée la bille est, naturellement, le numéro gagnant.
Si le numéro gagnant est celui sur lequel le joueur a misé (probabilité de 1/50, plutôt faible), le croupier lui remet 3 fois la somme misée.
Sinon, le croupier regarde si le numéro misé par le joueur est de la même couleur que le numéro gagnant (s'ils sont tous les deux pairs ou tous les deux impairs). Si c'est le cas, le croupier lui remet 50 % de la somme misée. Si ce n'est pas le cas, le joueur perd sa mise.
Le problème est que mon programme bugue.Lancez-le,vous verrez. Voici le code
import math
import random
a = random.randrange(50)
argent = 1000
continuerpartie = True
argentmiser= - 1
numpari = -1
print("Bienvenu au casino,voici les règles du jeu")
print("....")
print("Vous partez avec 1k")
while continuerpartie == True:
while argentmiser <= 0 or argentmiser>=argent:
try:
argentmiser = int(input("Saisissez combien vous voulez miser"))
except:
print("Vous avez saisi une valeur impossible à mettre")
else:
argent-=argentmiser
while numpari < 0 or numpari >= 50:
try:
print("Vous allez saisir le nombre sur lequel parier")
numpari = int(input("Saisissez un num entre 0 et 49"))
except:
print("Vous avez saisi une valeur impossible à mettre")
num = random.randrange(50)
if num == numpari:
argentmiser*=3
argent+=argentmiser
print('Le num parié est juste')
print("Vous avez",argent,"euros")
elif num % 2 == 0 and numpari % 2 == 0:
argentmiser*=0.5
argent+=argentmiser
print("Les 2 nums sont paires")
print("Vous avez",argent,"euros")
elif num % 2 == 1 and numpari % 2 == 1:
argentmiser*=0.5
argent+=argentmiser
print("Les 2 nums sont impaires")
print("Vous avez",argent,"euros")
elif argent >=1:
print("Il vous reste",argent,"euro(s)")
elif argent == 0:
print("Vous avez tt perdu")
continuerpartie = False
Merci de votre aide et du temps que vous y mettez.
- Edité par MouhcineGhannam 31 juillet 2021 à 16:48:42
Je te donne un indice: le else après le premier try doit être enlevé et l'assignation qui suit décalée au même niveau que le try Tu ne décales par rapport au try ou except que ce qui doit être exécuté par le try / except Le try ... except pourrait être comparé à un if ... else
Le Tout est souvent plus grand que la somme de ses parties.
Programme Casino
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Python c'est bon, mangez-en.
Le Tout est souvent plus grand que la somme de ses parties.