IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Problème Python : Print ne fonctionnant pas après une chaîne de conditions


Sujet :

Python

  1. #1
    Membre à l'essai Avatar de nonotxh
    Homme Profil pro
    Apprenti-Programmeur
    Inscrit en
    novembre 2018
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : Apprenti-Programmeur

    Informations forums :
    Inscription : novembre 2018
    Messages : 12
    Points : 19
    Points
    19
    Par défaut Problème Python : Print ne fonctionnant pas après une chaîne de conditions
    Bonjour, voilà mon problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    nbr1 = input('Saisissez le premier nombre :  ')
    nbr2 = input('Saisissez le second nombre :  ')
    ope = input('Saisissez l\'opérateur + (addition) | - (soustraction) | * (multiplication) | / (division) | ^ (puissance) ')
    output = 0
    # On récupère les valeurs entrées
    
    print('Calcul à effectuer :', nbr1, ope, nbr2)
    
    # On affiche le calcul à effectuer
    
    nbr1 = input('Saississez le premier nombre !')
    nbr2 = input('Saississez le second nombre !')
    ope = input('Saississez l\'opérateur + | - | * ou bien /')
    
    # On récupère les valeurs entrées
    
    print('Calcul à effectuer :', nbr1, ope, nbr2)
    
    # On affiche le calcul à effectuer
    
    if ope == "+":
      nbr1 = int(nbr1)
      nbr2 = int(nbr2)
      output = nbr1 + nbr2
    elif ope == "-":
      nbr1 = int(nbr1)
      nbr2 = int(nbr2)
      output = nbr1 - nbr2
    elif ope == "*":
      nbr1 = int(nbr1)
      nbr2 = int(nbr2)
      output = nbr1 * nbr2
    elif ope == "/":
      nbr1 = int(nbr1)
      nbr2 = int(nbr2)
    if nbr2 == "0":
        nbr1 = int(nbr1)
        nbr2 = int(nbr2)
        output = 'Erreur: Disvision par zéro impossible'
    elif nbr1 == "0":
        nbr1 = int(nbr1)
        nbr2 = int(nbr2)
        ouput = 'Erreur: Disvision par zéro impossible'
      output = nbr1 / nbr2
    else:
      nbr1 = int(nbr1)
      nbr2 = int(nbr2)
      output = 'Le résultat n\' a pas été trouvé.'
    
    print(nbr1, ope, nbr2, '= ou ≃ ', output)
    # On effectue le calcul
    # Puis on affiche le résultat
    
    
    Or, là le problème c'est juste que le print tout à la fin ne marche pas.

    Nom : indexiiii.PNG
Affichages : 110
Taille : 5,9 Ko

    Vous voyez un petit bout d'écriture à la fin mais c'est tout simplement Python qui me redit de saisir un nombre.

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    février 2009
    Messages
    6 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2009
    Messages : 6 387
    Points : 23 533
    Points
    23 533
    Billets dans le blog
    124
    Par défaut


    Erreur d'indentation ligne 44

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre confirmé Avatar de Hominidé
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    juin 2018
    Messages
    351
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous

    Informations forums :
    Inscription : juin 2018
    Messages : 351
    Points : 509
    Points
    509
    Par défaut
    Bonsoir,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    nbr1 = int(input('Saississez le premier nombre !'))
    nbr2 = int(input('Saississez le second nombre !'))
    ope = input('Saississez l\'opérateur + | - | * ou bien /')
     
    # On récupère les valeurs entrées
     
    print('Calcul à effectuer :', nbr1, ope, nbr2)
     
    # On affiche le calcul à effectuer
     
    if ope == "+":
      output = nbr1 + nbr2
    elif ope == "-":
      output = nbr1 - nbr2
    elif ope == "*":
      output = nbr1 * nbr2
    elif ope == "/":
      if nbr2 == 0:
        output = 'Erreur: Disvision par zéro impossible'
      elif nbr1 == 0:
        ouput = 'Erreur: Disvision par zéro impossible'
      else:
        output = nbr1 / nbr2
    else:
      output = 'Le résultat n\' a pas été trouvé.'
     
    print(nbr1, ope, nbr2, '= ou ≃ ', output)

  4. #4
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    juin 2013
    Messages
    1 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2013
    Messages : 1 496
    Points : 1 962
    Points
    1 962
    Par défaut
    Il ne faut pas hésiter à user et abuser de la commande "print" à tous les étages si besoin.
    Pas d'aide par mp.

  5. #5
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    février 2006
    Messages
    9 631
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : février 2006
    Messages : 9 631
    Points : 26 312
    Points
    26 312
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par nonotxh Voir le message
    Vous voyez un petit bout d'écriture à la fin mais c'est tout simplement Python qui me redit de saisir un nombre.
    Ben oui mais comme tu demandes 2 fois de faire saisir les nb1 et nb2 (en lignes 1 et 2 puis en ligne 11 et 12) perso je trouve ça normal.
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site

Discussions similaires

  1. Réponses: 10
    Dernier message: 11/12/2013, 13h33
  2. "python print" ne fonctionne pas
    Par oodini dans le forum Général Python
    Réponses: 12
    Dernier message: 19/01/2012, 22h49
  3. Réponses: 7
    Dernier message: 24/01/2006, 12h03
  4. La fonction CurrentDb() ne fonctionne pas dans une requête
    Par Sébastien Le Goyet dans le forum Access
    Réponses: 8
    Dernier message: 24/11/2005, 18h46
  5. Réponses: 1
    Dernier message: 27/10/2005, 22h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo