Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème TP zcasino

Sujet résolu
    26 mars 2015 à 22:13:42

    Bonjour à tous,

    je suis le tuto pour apprendre le tuto et en suis au TP du zcasino:

    mon code est loin d'être fini: je commençais pas faire une petite base, et avait pour objectif d'ensuite le perfectionner etc,

    j’exécute régulièrement mon code pour essayer de déceler les erreurs, les réparées etc, enfin apprendre quoi,

    sauf que là j'ai dans mon code une erreur de syntaxe au niveau du elif que je ne comprend pas, j'ai chercher sur google, il semblerait que ce soit une erreur d'indentation mais je ne vois pas où, voici mon code:

    # -*-coding:Latin-1 -*
    import random
    print("Bienvenu au zcasino! Pour vous lancer, votre porte feuille virtuel a été crédité de 50$")
    mise=input("Rentrez ici votre mise (chiffres uniquement) ")
    mise=int(mise)
    case_joueur=input("Rentrez ici la case sur la quelle vous souhaitez jouer, comprise entre 0 et 49!")
    case_joueur=int(case_joueur)
    print("Votre portefeuille virtuel a bien été débité de", mise, ("appuyer sur entrer pour lancer le tirage"))
    input()
    case_random=1
    # 1=random.randrange(50)
    case_random=int(case_random)
    gain=0
    porte_f=50
    joueur_pair=case_joueur%2
    random_pair=case_random%2
    if case_joueur==case_random:
    	gain=mise*3
    	print("La boule s'est arrêtée sur le numéro", case_random , ("Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de :", mise+gain, ", félicitation!"  )
    elif joueur_pair=random_pair:
    	if: random_pair=1:
    		gain=mise/2
    		print("La boule s'est arrêtée sur la case", case_random, "qui est de couleur rouge, tout comme la case", case_joueur, "que vous avez jouer, vous remportez donc :", mise+gain, "félicitation!")
    	else:
    		gain=mise/2
    		print("La boule s'est arrêtée sur la case", case_random, "qui est de couleur noire, tout comme la case", case_joueur, "que vous avez jouer, vous remportez donc :", mise+gain, "félicitation!")
    else:
    	print("La boule s'est arrêtée sur la case", case_random, "ni le nombre ni la couleure ne correspond avec la case jouée, vous avez donc perdu, pas de chance!")
    
    
    input("Stop")



     Je sais que certaines lignes tel que les lignes 10 et 11 peuvent vous semblez idiote mais comme je l'ai dis je fais pas à pas et donc, par exemple pour les lignes 10 et 11, je fais ca pour pouvoir facilement tester mon programme.

    merci et bonne soirée

    -
    Edité par V73 26 mars 2015 à 22:15:46

    • Partager sur Facebook
    • Partager sur Twitter
      27 mars 2015 à 2:51:30

      Salut, 

      une erreur classique , tu as mis :
      elif joueur_pair = random_pair:

      C'est à dire qu'UN Seul signe "égal" ! Comme une simple affectation de valeur

      Si tu essais avec ça : 

      elif joueur_pair == random_pair:

        Tu verras alors que cela marche car cette fois-ci tu fais vraiment un test entre tes 2 variables.

      • Partager sur Facebook
      • Partager sur Twitter
        27 mars 2015 à 6:23:06

        Rho mais mince alors!! Je cherche partout pendant 30min et je vois même pas cette petite erreure toute conne!!

        merci beaucoup jyxx! :)

        Edit: Bon bha enfaite visiblement c'était pas cette erreure là détecté, j'ai modifié, donc ca donne ca :

        # -*-coding:Latin-1 -*
        import random
        print("Bienvenu au zcasino! Pour vous lancer, votre porte feuille virtuel a été crédité de 50$")
        mise=input("Rentrez ici votre mise (chiffres uniquement) ")
        mise=int(mise)
        case_joueur=input("Rentrez ici la case sur la quelle vous souhaitez jouer, comprise entre 0 et 49!")
        case_joueur=int(case_joueur)
        print("Votre portefeuille virtuel a bien été débité de", mise, ("appuyer sur entrer pour lancer le tirage"))
        input()
        case_random=1
        # 1=random.randrange(50)
        case_random=int(case_random)
        gain=0
        porte_f=50
        joueur_pair=case_joueur%2
        random_pair=case_random%2
        if case_joueur==case_random:
        	gain=mise*3
        	print("La boule s'est arrêtée sur le numéro", case_random , ("Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de :", mise+gain, ", félicitation!"  )
        elif joueur_pair==random_pair:
        	if: random_pair=1:
        		gain=mise/2
        		print("La boule s'est arrêtée sur la case", case_random, "qui est de couleur rouge, tout comme la case", case_joueur, "que vous avez jouer, vous remportez donc :", mise+gain, "félicitation!")
        	else:
        		gain=mise/2
        		print("La boule s'est arrêtée sur la case", case_random, "qui est de couleur noire, tout comme la case", case_joueur, "que vous avez jouer, vous remportez donc :", mise+gain, "félicitation!")
        else:
        	print("La boule s'est arrêtée sur la case", case_random, "ni le nombre ni la couleure ne correspond avec la case jouée, vous avez donc perdu, pas de chance!")
        
        
        input("Stop")
        

        Et ca ne marche toujours pas : "invaild synthaxe error"

        Sur IDLE ca me surligne et elif en rouge

        Pour essayer d'identifier le problème j'ai supprimer la partie du elif, donc j'ai ca:

        # -*-coding:Latin-1 -*
        import random
        print("Bienvenu au zcasino! Pour vous lancer, votre porte feuille virtuel a été crédité de 50$")
        mise=input("Rentrez ici votre mise (chiffres uniquement) ")
        mise=int(mise)
        case_joueur=input("Rentrez ici la case sur la quelle vous souhaitez jouer, comprise entre 0 et 49!")
        case_joueur=int(case_joueur)
        print("Votre portefeuille virtuel a bien été débité de", mise, ("appuyer sur entrer pour lancer le tirage"))
        input()
        case_random=1
        # 1=random.randrange(50)
        case_random=int(case_random)
        gain=0
        porte_f=50
        joueur_pair=case_joueur%2
        random_pair=case_random%2
        if case_joueur==case_random:
        	gain=mise*3
        	print("La boule s'est arrêtée sur le numéro", case_random , ("Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de :", mise+gain, ", félicitation!"  )
        else:
        	print("La boule s'est arrêtée sur la case", case_random, "ni le nombre ni la couleure ne correspond avec la case jouée, vous avez donc perdu, pas de chance!")
        
        
        input("Stop")
        

        Et surprise, encore une synthaxe error, cette fois ci sur le else:

        Donc là je comprend vraiment plus rien, j'ai vérifié mes indentations etc, rien n'y fais :(

        merci d'avance

        -
        Edité par V73 27 mars 2015 à 7:22:58

        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          27 mars 2015 à 7:30:59

          Quel est le message d'erreur exact ? avec numéro de ligne comprise...
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            27 mars 2015 à 7:42:18

            if: random_pair=1:

            il y a deux erreurs au niveau de cette ligne :

            1. Tu a mis deux fois le " : "

            2.Tu n'as pas mis ==

            • Partager sur Facebook
            • Partager sur Twitter
              27 mars 2015 à 10:01:35

              Le syntaxe error est souvent en fait situé une ligne avant. Dans on print, il manque une fermeture de parenthèses. Enfin, je dirais plutôt qu'il ne faut pas ré-ouvrir la parenthèse

              print("La boule s'est arrêtée sur le numéro", case_random , "Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de :", mise+gain, ", félicitation!"  )
              
              Python ne peut s'en rendre compte qu'un fois qu'il arrive à la prochaine ligne...

              Je te conseille d'apprendre de suite à utiliser la commande format pour le print. C'est comme ceci:

              print("La boule s'est arrêtée sur le numéro {0}. Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de : {1}. Félicitation!".format(case_random, mise + gain))
              

              -
              Edité par Dan737 27 mars 2015 à 10:03:40

              • Partager sur Facebook
              • Partager sur Twitter
                27 mars 2015 à 14:29:51

                noltheo03 a écrit:

                if: random_pair=1:

                il y a deux erreurs au niveau de cette ligne :

                1. Tu a mis deux fois le " : "

                2.Tu n'as pas mis ==

                Ouais en effet, mais ca bloquait à la ligne d'avant, mais merci de me l'avoir fais remarquer (je m'embrouille encore pas mal dans la syntaxe, ca devrait venir à force

                Dan737 a écrit:

                Le syntaxe error est souvent en fait situé une ligne avant. Dans on print, il manque une fermeture de parenthèses. Enfin, je dirais plutôt qu'il ne faut pas ré-ouvrir la parenthèse

                print("La boule s'est arrêtée sur le numéro", case_random , "Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de :", mise+gain, ", félicitation!"  )
                

                Python ne peut s'en rendre compte qu'un fois qu'il arrive à la prochaine ligne...

                Je te conseille d'apprendre de suite à utiliser la commande format pour le print. C'est comme ceci:

                print("La boule s'est arrêtée sur le numéro {0}. Vous avez donc gagner le gros lot : votre prote feuille virtuel a été crédité de : {1}. Félicitation!".format(case_random, mise + gain))
                

                -
                Edité par Dan737 il y a environ 4 heures



                Bien vu, c'était ca, en plus je le sais mais voilà, comme je l'ai dis avant, je m'embrouille parfois, et puis du coup j'ai pas du tout cherché sur cette ligne vu qu'on me mettais l'erreur sur le elif

                J'ai pas trop compris la commande format mais de toute facon je pense qu'elle arrivera dans la suite du tuto

                En tout cas merci beaucoup de votre aide! :D



                -
                Edité par V73 27 mars 2015 à 15:43:16

                • Partager sur Facebook
                • Partager sur Twitter

                Problème TP zcasino

                × 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.
                • Editeur
                • Markdown