Partage
  • Partager sur Facebook
  • Partager sur Twitter

Console qui s'ouvre mais part aussi tôt .

Sujet résolu
    13 mars 2013 à 18:03:08

    Bonjour à tous,

    Voilà , j'ai un petit problème je suis arrivé à la vidéo où en entrant un numérateur et diviseur , python donne le résultat cependant la console s'ouvre et part aussi tôt même avec le code "pause" si quelqu'un peut m'aider ça serait gentil , merci :)

    Voici le code : 

    # -*-coding:Latin-1 -*

    import os

    numerateur = int(input("entrez le numerateur"))

    diviseur = int(input("entrez le diviseur "))

    if diviseur <> 0 :

        print("Résultat : ", float(numerateur)/diviseur

    else :

        print("Division par zeor impossible")

    print("Fin du programme")          

    os.system("pause")

    • Partager sur Facebook
    • Partager sur Twitter
      13 mars 2013 à 18:22:12

      Salut,

      Quelle version de Python utilises-tu ?

      Si c'est Python 3, alors la syntaxe diviseur <> 0 y est illégale, et elle est de toute façon dépréciée dans Python 2, au profit de diviseur != 0. Il est probable que ce soit ça ton erreur, puisque le programme plante avant même de tomber sur le premier input.

      En parlant de ça, vire import os et remplace os.system("pause") par input("Appuyez sur ENTREE pour continuer...").

      Et écris en gros sur un post-it que tu colleras à ton écran : "os.system("pause") C'EST LE MAL".

      -
      Edité par nohar 13 mars 2013 à 18:27:51

      • Partager sur Facebook
      • Partager sur Twitter
      Zeste de Savoir, le site qui en a dans le citron !
        13 mars 2013 à 21:14:14

        Pourquoi ? Pourtant il a marché quand je l'ai utiliser pour faire afficher simplement "Bonjour"^^

        Sinon ça veut toujours pas : 

        # -*-coding:Latin-1 -*

        numerateur = int(input("entrez le numerateur"))

        diviseur = int(input("entrez le diviseur "))

        if diviseur != 0 :

            print("Résultat : ", float(numerateur)/diviseur

        else :

            print("Division par zeor impossible")

        print("Fin du programme")          

        input("Appuyez sur ENTREE pour continuer..")

        Merci encore pour ton aide .

        • Partager sur Facebook
        • Partager sur Twitter
          13 mars 2013 à 21:25:29

          Il te manque une parenthese fermante apres if diviseur != 0:.

          Verifies si c'est pas ca.

          -
          Edité par stackOverflow 13 mars 2013 à 21:25:39

          • Partager sur Facebook
          • Partager sur Twitter
            13 mars 2013 à 21:25:40

            print("Résultat : ", float(numerateur)/diviseur
            

            Il manque une parenthèse fermante à la fin de cette ligne.

            Edit : grilled par le chat aux yeux rouges.

            Sinon pour l'histoire du os.system, le problème n'est pas que ça fonctionne ou pas, c'est plutôt que c'est une pratique crade, pas portable, et potentiellement dangereuse (j'ai l'impression de copier-coller cette phrase dans tous les threads...). Tu n'y es pour rien : c'est le tutoriel qui montre ça. Mais le tutoriel a tort sur ce point.

            -
            Edité par nohar 13 mars 2013 à 21:28:07

            • Partager sur Facebook
            • Partager sur Twitter
            Zeste de Savoir, le site qui en a dans le citron !
              13 mars 2013 à 22:08:05

              ça marche, super, merci encore.Très bien c'est noté pour (os.system)
              • Partager sur Facebook
              • Partager sur Twitter

              Console qui s'ouvre mais part aussi tôt .

              × 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