Partage
  • Partager sur Facebook
  • Partager sur Twitter

En testant les valeurs 1,1 le résultat est 0.11000

    29 novembre 2020 à 10:55:45

    Bonjour,

    Léa va régulièrement acheter toujours les mêmes bonbons : des fraises à 0.04 euros l'unité et des réglisses à 0.07 euros l'unité.
    Créer un programme qui donne le prix total payé par Léa en fonction du nombre a de fraises et b de réglisses achetés.

    Entrée : Le nombre a de fraises et b de réglisses achetés.

    Sorties : le prix payé par Léa.

    def ma_fonction(a,b):
       resultat=int(a+b)
       return resultat

    print(ma_fonction(0.04,0.07))

    quelqu'un peut m'aider s'il vousplaît

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      29 novembre 2020 à 11:08:46

      Slt,

      Tu n'as pas compris l'énoncé de l'exo, on te demande en paramètre un Nombre de fraises et de réglisses

      • Partager sur Facebook
      • Partager sur Twitter
        29 novembre 2020 à 11:15:01

        Bonjour.

        Actuellement, tu ne fais que la somme de 1 fraise et 1 bâton de réglisse que tu transformes en entier. Donc, cela donne :

        >>> int(0.04+0.07)
        0

        Tu devrais plutôt écrire ta fonction comme cela :

        def ma_fonction(a, b):
           resultat = round(a * 0.04 + b * 0.07, 2) # J'utilise round pour gérer l'affichage du résultat
           return resultat



        -
        Edité par PB68 29 novembre 2020 à 11:17:04

        • Partager sur Facebook
        • Partager sur Twitter

        PB68

          29 novembre 2020 à 11:51:40

          Merci beaucoup c'est ça mon erreur

          voilà je l'ai corrigé

          def ma_fonction(a,b):
             
             prix_fra=0.04
             prix_reg=0.07
             somme=(a*prix_fra)+(b*prix_reg)
             return somme
          print(ma_fonction(10,12))



          • Partager sur Facebook
          • Partager sur Twitter
            29 novembre 2020 à 12:02:56

            xavierdominique a écrit:

            Merci beaucoup c'est ça mon erreur

            voilà je l'ai corrigé

            def ma_fonction(a,b):
               
               prix_fra=0.04
               prix_reg=0.07
               somme=(a*prix_fra)+(b*prix_reg)
               return somme
            print(ma_fonction(10,12))



            Avec un petit peu plus d'expérience, tu verras que les parenthèses dans le calcul sont inutiles, la variable somme aussi. prix_fra est en fait une constante du programme et donc on pourrait récrire ton code ainsi :

            PRIX_FRA=0.04
            PRIX_REG=0.07
            
            def ma_fonction(a,b):
               return a*PRIX_FRA+b*PRIX_REG
            
            print(ma_fonction(10,12))

            Et certains te diront même qu'il faudrait formater en respectant la PEP8.



            • Partager sur Facebook
            • Partager sur Twitter

            En testant les valeurs 1,1 le résultat est 0.11000

            × 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