Jeu de la roulette

Fermé
Ayico Messages postés 1 Date d'inscription mercredi 23 septembre 2020 Statut Membre Dernière intervention 23 septembre 2020 - Modifié le 24 sept. 2020 à 00:28
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 25 sept. 2020 à 13:29
Bonjour,
je ne comprend pas ou est mon erreur, ou plûtot comment je peux la rectifier, le terminal me dit toujours que j'ai un probleme avec mes variables...pourriez-vous m'aider ?

import random

# Toutes les variables
sStart = 1000 
mise = 0
nChoix = 0
nWin = random.randint(0,49)

def start(): # Fonction argent
    sStart
    print("Votre somme d'argent s'élève à "+str(sStart)+"$")

def miser(): # Fonction mise
    mise = int(input("Saisissez votre mise :\n")) # Variable de la mise
    if mise <= 0 or mise > sStart:
        print("désolé mais vous ne pouvez pas miser cette somme...veuillez resaisir une mise")
        miser()

def nChoisi(): # Fonction nombre choisi
    nChoix = int(input("Choisissez un nombre entre 0 et 49\n")) # Variable nombre chosisi    
    if nChoix<0 or nChoix>49:
        print("Ce numéro ne se trouve pas entre 0 et 49")
        nChoisi()

def nWinner():
    nWin
    print(nWin,"est le numéro gagnant !")

def result():
    if nChoix==nWin:
        sStart += mise*3
        print("Les deux numéros sont identiques !!!")
    elif (nChoix%2 == 0 and nWin%2 == 0) or (nChoix%2 != 0 and nWin%2 != 0):
        sStart += mise*0.5
        print("Les deux numéros sont de même couleur !")

    else:
        sStart -= mise
        print("C'est perdu...")

while sStart>0:

    print(start())

    print(miser())
    
    print(nChoisi())

    print(nWinner())

    print(result())


print("GAME OVER...tu as perdu tout ton argent...")
exit()

3 réponses

yg_be Messages postés 23431 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 janvier 2025 Ambassadeur 1 559
24 sept. 2020 à 09:37
bonjour, que te dit précisément le terminal?
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
Modifié le 24 sept. 2020 à 11:05
Bonjour Ayico,

Problème avec la variable sStart ...

Encore un truc de portée des variables hors et à l'intérieur les fonctions :-)

De plus, je pense que la variable nWin à toujours la même valeur à chaque tour de boucle ... (la valeur initiale)

Et pourquoi fais tu un print des fonctions dans la boucle while au lieu de les appeler tout simplement ?

start()
miser()
etc .....
0
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
25 sept. 2020 à 13:29
Hello Ayico,

Tu a laissé tomber ?
0