Casino roulette python

Fermé
Omegamer Messages postés 3 Date d'inscription lundi 21 décembre 2020 Statut Membre Dernière intervention 22 décembre 2020 - 21 déc. 2020 à 22:25
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 22 déc. 2020 à 21:44
Bonjour,
j suis un élève de première ayant pris la spécialité NSI, ey je dois faire une roulette python en respectant les règles suivantes :

• 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 mise doit être un nombre pair et 10$ minimum.
• Le joueur dispose de 100$ au départ.
• 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. 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é, 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.
• On utilisera pour devise le dollar $ à la place de l'euro pour des raisons
d'encodage sous la console Windows.
• A des fins de statistiques, les numéros tirés sont enregistrés dans un
tableau puis triés et affichés lorsque le joueur a perdu.

j ai fait mes lignes de codes mais ces dernières sont fausses pour des raisons que j'ignore .
Est ce que quelqu'un pourrait me faire le code ou modifier le mien (même si je pense que c'est moins facil vu les erreurs) en respectant les consignes svp merci beaucoup !!!!

voici mon code:

from random import randint #on importe le modul random qui va permettre de tirer un nombre au hasard

#NOMME LES FONCTION ET VARIABLESe
porte_monnaie=100 # au depart on a 100$

def nombre_choisi():
while 1: #on repettera la boucle a l'infini
numero=int(input("quel nombre voullez vous jouer?"))# on demande d'insérer un entier pour le nombre souhaité
global a
a= numero%2
if numero>49 or numero<0: #si le nombre et supperieur a 49 et iferrieur a 0 alors
print("veuillez entrer un nombre paire ,entier entre 0 et 49") #on demande d'entrer un nombre valide
break #on sort de la fonction77

def mise():
while 1: #on repette la boucle a l'infini
argent_mise=int(input("quelle somme voullez vous miser?"))# on demande d'inserrer un entier pour la somme qu'on veut miser
if argent_mise<10:#si elle est iferrieur a 10 alors
print("veuilez parier une somme supperieur a 10")# on doit parier une somme supperieur ou egal a 10
continue#on passe a l'étape suivant une fois que c'est vérifié
if argent_mise>porte_monnaie :# si la somme pariée est plus gande que le porte monnaie
print("vous n'avez pas assez d'argent")# on affiche vous n'avez pas assez d'fargent
continue#on passe a l'étape suivant une fois que c'est vérifié
if argent_mise%2!=1:#si la somme misée est impaire
print("entrez une mise paire")#on affiche entrez un nombre paire
continue
break #on sort de la fonction


print("bienvenue au cesar palace casino vous avez",porte_monnaie,"$")
while porte_monnaie>10: #tant que l'argent qu'on a est supperieur a 10
numero=nombre_choisi() #on appel notre fonction nombre_choisi
print("vous avez choisis le nombre",numero)
argent_mise=mise()#on appel notre fonction argent_mise
print("vous allez parier",argent_mise,"$ sur le nombre",numero)
case=randint(0,49) #on tire un nombre entre 0 et 49
b=case%2
print("la roulette tourne et s'arrette sur le numero",case)
if case==numero: #si le nombre choisi est egal au nombre tiré alors
mise=mise*3#la mise est triplée
porte_monnaie+=mise# on ajoute cette mise au porte monnaie
print("vous avez gagné",mise,"$")
print("vous avez",porte_monnaie)
elif a==b or a!=0 and b!=0: #sinon , si le nombre choisi et tiré sont tous les deux paires ou impaires
mise=mise*0.5#on dvise la mise par 2
porte_monnaie+=mise#on ajoute cette ise au porte monnaie
print("vous avez gagné",mise,"$")
print("vous avez",porte_monnaie)
else:#sinon
porte_monnaie-=mise#ou soustrait la mise au porte monnaie
print("domage vous avez perdu")
print("vous avez donc",porte_monnaie,"$")








Configuration: Macintosh / Safari 14.0.2

2 réponses

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
22 déc. 2020 à 11:13
0
me première boucle dans la premiere fonction ne cesse de se repetter ?. Deplus il y a un problè
me que je n'arrive pas a identifier avec les nombres floatants et entiers
0
Omegamer Messages postés 3 Date d'inscription lundi 21 décembre 2020 Statut Membre Dernière intervention 22 décembre 2020
22 déc. 2020 à 19:12
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476 > Omegamer Messages postés 3 Date d'inscription lundi 21 décembre 2020 Statut Membre Dernière intervention 22 décembre 2020
22 déc. 2020 à 19:37
tu n'as pas tenu compte des deux liens.

une des erreurs dans ton code, c'est que tu utilises le même nom,
mise
, pour une fonction et pour une variable.
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476 > yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024
22 déc. 2020 à 19:39
"me première boucle dans la premiere fonction": les fonctions ont des noms, et les lignes ont des numéros.
0
Omegamer Messages postés 3 Date d'inscription lundi 21 décembre 2020 Statut Membre Dernière intervention 22 décembre 2020
22 déc. 2020 à 20:56
merci celle est a présent réglé!! Cependant, comme vous pouvez le voir dans la capture d'écran ci-dessous, je ne comprends pas pourquoi ma variable argent_mise et numéro ne s'affiche pas correctement dans la console (qui devrait respecter les "print" des lignes 33 et 35)
encore merci
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
Modifié le 22 déc. 2020 à 21:27
vois-tu les numéros de ligne dans l'image que tu partages?
peux-tu prendre un peu de temps pour lire et appliquer ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

est-ce ton premier exercice en python?
as-tu déjà fait des exercices avec des fonctions?
as-tu déjà utilisé
return
?

sinon, commence peut-être par des exercices plus simples.
0
omegamer > yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024
22 déc. 2020 à 21:38
non ce n'est pas du tout mon premier exercice !!!
excusez moi j avais seulement lu le premier lien .
mais je crois que les return c est seulement pour des valeurs
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476 > omegamer
22 déc. 2020 à 21:44
montre alors un exemple d'une fonction avec return.
je ne comprends pas "c est seulement pour des valeurs". donne des exemples.
0