Aide pour un programme python (casino)

OCA -  
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   -
bonjour,

je dois créer un programme puis le présenter, j'ai choisis de créer un casino avec 2 jeux: roulette et machine a sous.

pouvez-vous m'aidez s'il vous plaît ? pour le moment le principale problème est que je n'arrive pas a utiliser l'argent que l'utilisateur peut gagner dans les jeux dans les fonctions, lorsque je change de fonction l'argent disparaît par exemple je n'arrive pas à passer de l'accueil a un jeux et inversement sans perdre l'argent.

import random
 
def entre(mot_de_passe):
    for i in range(3):
     mdp=input("veuillez entrer votre mdp:")
     if mdp==mot_de_passe:
         print("welcome to the python casino !")
         return casino()
     else:
         print("mauvaise réponse")
 
    print("avez-vous oubliez votre mdp?")
    réponse=input()
    if réponse=="oui":
        mot_de_passe=input("veuillez crée un mdp:")
        return entre(mot_de_passe)
    else:
        return entre(mot_de_passe)
 
def machine(budget):
    jeu=True
    oui=True
    compteur=100
    groslot=0
    while jeu==True:
        compteur=compteur+10
        jeu=input("voulez-vous lancer la machine ? ")
        if jeu=='oui':
            jeu = True
        if jeu==True:
         if budget>=25:
          budget=budget-25
          print("Vous commencez avec",budget, "$")
          groslot=groslot+25
          chance=random.randint(0, compteur)
          print(chance)
 
          if chance==0:
           print("vous gagnez un endettement a vie  je rigole...regarde ton compte quand meme au cas ou")
           return machine(budget)
 
          elif chance==1:
           print("vous gagnez 1$")
           budget=budget+1
           return machine(budget)
 
          elif chance==5:
           print("vous gagnez 5$")
           budget=budget+5
           return machine(budget)
 
          elif chance==10:
           print("vous gagnez 10$")
           budget=budget+10
           return machine(budget)
 
          elif chance==25:
           print("vous gagnez 25$")
           budget=budget+25
           return machine(budget)
 
          elif chance==50:
           print("vous gagnez 50$")
           budget=budget+50
           return machine(budget)
 
          elif chance==100:
           print("vous gagnez 100$")
           budget=budget+100
           return machine(budget)
 
          elif chance==1000:
           print("vous gagnez le gros lot!")
           budget=budget+100000
           return machine(budget)
 
          elif chance==999:
           print("vous gagnez le VRAIS gros lot!")
           budget=budget+groslot
           print("fin de partie")
           return casino(portemonnaie)
 
          else:
           print("vous ne gagnez rien")
 
         else:
           jeu=False
           print("veuillez investir le montant nécessaire")
           return casino(portemonnaie)
 
def roulette():
    jeu=input("voulez-vous lancer la roulette de la mort ? ")
    if jeu=='oui':
      chance=random.randint(0, 100)
      print(chance)
 
 
 
      if chance<11:
       print("vous gagnez une voiture ! et plus précisément une twingo")
       return casino(portemonnaie)
 
      elif chance==0:
       print("C'EST PARTI POUR LA ROULETTE RUSSE, *bruit de revolver* ah  bah zut ta perdu... ")
       return casino(portemonnaie)
 
      elif chance<16:
       print("vous gagnez un séjour en amazonie ")
       return casino(portemonnaie)
 
      elif chance>31:
       print("vous gagnez une moto miniature !")
       return casino(portemonnaie)
 
      elif chance>50:
       print("vous gagnez une villa en australie")
       return casino(portemonnaie)
 
      elif chance>100:
       print("vous gagnez le trophé de la perte de temps")
       return casino(portemonnaie)
 
      elif chance==100:
       print("vous gagnez 1 000 000 000 $... dans vos rêves. ")
       return casino(portemonnaie)
 
      else:
       print("vous gagnez un séjour au goulag :D")
 
    else:
     return casino(portemonnaie)
 
def argent(quantite):
    choix=input("voulez-vous mettre de l'argent?")
    if choix=="oui":
        budget=int(input("mettez de l'argent:"))
        quantite=quantite+budget
        print("voici votre solde actuelle:", budget)
        return quantite
    else:
        return quantite
 
def casino(portemonnaie):
    joue = True
    while joue==True:
        print("À quel jeux voulez-vous jouer?")
        print("1.machine à sous")
        print("2.roulette")
        print("3.mettre de l'argent sur son compte",portemonnaie, "$")
        reponse=int(input("quel est votre choix ?"))
        if reponse==1:
            return machine(portemonnaie)
        elif reponse==2:
            return roulette()
        elif reponse==3:
            portemonnaie = argent(portemonnaie)
        else:
            reponse=input("voulez-vous arreter ?")
            if reponse=="oui":
                print('Au revoir')
                return
 
 
def programme():
 mot_de_passe=input("veuillez crée un mdp:")
 entre(mot_de_passe)
 
 
programme()

4 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
dans quoi mémorises-tu l'argent?
est-ce ton premier exercice en python?
0
OCA
 
je veux stocker l'argent dans la variable portemonnaie, ce n'est pas mon premier exercice en python mais c'est la première fois que je dois créer un long programme comme celui que j'ai fais.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
combien d'argent le joueur a-t-il au départ?
où as-tu initialisé la variable portemonnaie?

as-tu déjà fait des exercices avec des fonctions se partageant des variables?
je pense que tu devrais d'abord faire des exercices plus simples, afin de maitriser les concepts de base.
0
OCA > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
le joueur n'a pas d'argent au départ, il peut en mettre lorsqu'il arrive dans l'accueil, la variable est tout au début du programme. oui j'en ai déjà fais mais sur ce programme c'est plus complexe.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > OCA
 
que veux-tu dire par "la variable est tout au début du programme"? à quelle ligne?
à quelle ligne as-tu une instruction qui fait que le joueur n'a pas d'argent?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
as-tu testé ton programme? quad j'essaie, j'ai un message d'erreur.
je pense que tu devrais d'abord faire des exercices plus simples, afin de maitriser les concepts de base.
0
OCA > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
J'avais modifier mon programme de mon côté mais j'avais placer la variable tout au début juste après import
C'était portemonnaie=0.
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour,

Bizarre ce code

au début on demande d'entrer un mot de passe:

mot_de_passe=input("veuillez crée un mdp:")


Ensuite, on passe le mdp saisi à la fonction entre():

entre(mot_de_passe)


Et là, dans entre(), on redemande un mdp:

mdp=input("veuillez entrer votre mdp:")


Et tout ces return : return(casino()), dans certains cas, casino ne retourne rien
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Ah, je vois que tu as posté aussi sur un autre forum et que tu as eu des réponses !
0