Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher un résultat sans le calculer

    4 février 2011 à 15:08:38

    Bonjour, :)

    Je voulais savoir comment afficher une opération sans la calculer.
    Je m'explique :
    J'ai par exemple en python bien sur :

    a,b,c=2,8,5
    d=b*b-4*a*c
    X1=(-b+sqrt(d))/(2*a)
    #j'aimerai afficher X1 sans le calculer
    # C'est à dire avoir : X1 = (-8+2*sqrt(6))/4
    Je travaille sur un programme qui donne les solutions d'une équation du second degré et plus.
    Je crois que ça n'est pas possible mais qui sait peut-etre que c'est moi qui suis encore ignorant. :-°

    Merci pour vos réponses
    ;)
    • Partager sur Facebook
    • Partager sur Twitter
      4 février 2011 à 15:24:20

      Salut,

      Quelque chose comme ça? :

      from math import sqrt
      
      a,b,c=2,8,5
      d=b*b-4*a*c
      
      X1=(-b+sqrt(d))/(2*a)
      
      print X1
      
      • Partager sur Facebook
      • Partager sur Twitter
        4 février 2011 à 16:38:47

        Citation : Fort en pommes

        Salut,

        Quelque chose comme ça? :

        from math import sqrt
        
        a,b,c=2,8,5
        d=b*b-4*a*c
        
        X1=(-b+sqrt(d))/(2*a)
        
        print X1
        



        Merci pour la mise en page mais ça ne m'aide pour mon problème :D

        • Partager sur Facebook
        • Partager sur Twitter
          4 février 2011 à 16:42:44

          Bah je comprends pas ton problème alors... o_O

          Citation : akuma8


          #j'aimerai afficher X1 sans le calculer
          # C'est à dire avoir : X1 = (-8+2*sqrt(6))/4


          • Partager sur Facebook
          • Partager sur Twitter
            4 février 2011 à 17:20:32

            Si je comprend bien, tu voudrais afficher le résultat sans utiliser de variable au préalable ? C'est simple, il suffit de mettre dans print() directement ton opération. En l'occurence, tu essais de résoudre une équation du second degré :

            <math>\(\frac{-b+\sqrt{b^2-4ac}}{2a}\)</math>

            Tu écriras donc :

            from math import sqrt
            
            a,b,c = 2,8,5
            print((-b + sqrt(b**2 - 4*a*c))/(2*a))
            


            Par ailleur, si tu as besoin de résoudre des équations du 2nd degré dans ton programme, il existe le module scipy qui possède ce dont tu as besoin.

            PS : Avant que NoHar te passe un savon, met ton code entre les balises <code> et </code> comme ceci :

            Citation

            <code type="python">
            Ton code
            </code>
            


            J'espère avoir su t'être utile
            • Partager sur Facebook
            • Partager sur Twitter
              4 février 2011 à 18:33:26

              Je crois qu'au lieu d'avoir un résultat sous la forme d'un flottant, il souhaiterait obtenir un résultat exact... Quitte à afficher une expression mathématique.
              • Partager sur Facebook
              • Partager sur Twitter
              yjltg.
              Anonyme
                4 février 2011 à 19:04:56

                Bien sur que si c'est possible ce programme ;)

                from math import sqrt
                print("Entrez votre polynome du second degré de la forme ax²+bx+c")
                print("Entrez le coefficient a de x² :")
                a=float(input())
                print("Entrez le coefficient b de x :")
                b=float(input())
                print("Entrez c :")
                c=float(input())
                delta=b*b-4*a*c
                if delta>0:
                   x_1= (-b + sqrt(delta))/(2*a)
                   x_2= (-b - sqrt(delta))/(2*a)
                   print("Ce polynome possède deux racine :", x_1,"et",x_2)
                   print("Il peut se factoriser sous la forme :")
                   print('(x-',x_1,')*(x-',x_2,')')
                elif delta==0:
                   x_1 = -b/2*a
                   print("Ce polynome possède une racine :", x_1)
                   print("Il peut se factoriser sous la forme :")
                   print('(x-',x_1,'²')
                else :
                   print("Ce polynome ne possède pas de racine")
                


                Par contre il reste à modifier pour les fois ou x1 ou x2 sont negative car le programme affichera (x- -1.5) au lieu de (x+1.5), fais aussi attention l'ordinateur manque parfois de précision et ne donne pas le nombre exacte ;)

                En espérant t'avoir aidé :)
                • Partager sur Facebook
                • Partager sur Twitter
                  4 février 2011 à 20:03:33

                  Citation : akuma8


                  # C'est à dire avoir : X1 = (-8+2*sqrt(6))/4



                  OK, en fait tu veux faire du calcul symbolique (ou calcul formel).

                  Pan :
                  http://www.dakarlug.org/pat/scientifiq [...] symbolic.html


                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 février 2011 à 22:11:18

                    Merci pour vos aides.
                    Je vais voir toutes les solutions proposées. Et je reviendrai si ça ne marche pas.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Afficher un résultat sans le calculer

                    × 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