from math import *
# ℝésolution du polynôme
# Saisir les paramètres du polynôme du seconde degré de la forme f(x)=ax²+bx+c
print('Saisir les paramètres du polynôme du second degré de la forme f(x)=ax²+bx+c')
a=input("a =")
a=int(a)
b=input("b =")
b=int(b)
c=input("c =")
c=int(c)
# Test de validité du polynôme
if a==0:
  print('Le polynôme du second degré n\'existe pas!')
else:
  print('Il s\'agit d\'un polynôme du second degré')
# Calcul du discriminant 
  Δ=b*b-4*a*c
  print('')
  print('Calcul du discriminant Δ, avec Δ=b²-4ac')
  print("Delta =", Δ)
  print('')
  α=-b/(2*a)
  β=a*α*α+b*α+c
  if Δ > 0:
      print('Δ > 0, donc le polynôme du second degré admet deux racines réelles.')
      x1=(-b-sqrt(Δ))/(2*a)
      x2=(-b+sqrt(Δ))/(2*a)
      if x2 > x1 :  #test de l'exception d'une racine plus grande que l'autre pour l'établissement correct des tableaux de signes et de variation.
        print("x1 =",x1,"x2 =",x2)
        print('')
        print('Calcul des coordonnées du sommet S(α;β) de la parabole :') 
        print('S(',α,';',β,')')
        print('')
        print('Étude de signes sur ℝ:')
        if a > 0:
          print('f(x)>0 pour x ∈ ]-∞ ;',x1,'[ ∪ ]',x2,'; +∞[' )
          print('f(x)<0 pour x ∈ ]',x1,';',x2,'[')
          print('')
          print('Étude des variations sur ℝ:')
          print('f est décroissante sur ]-∞ ;',α,'[','puis croissante sur ]',α,'; +∞[')
          print('')
          print('Le minimum vaut',β,'.')
          print('')
          print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
          print('')
          print('La forme factorisée du polynôme du second degré s\'écrit :')
          print ('f(x) =',a,'*(x -(',x1,'))*(x -(',x2,'))')
          print('')
          print('La forme canonique du polynôme du second degré s\'écrit :')
          print ('f(x) =',a,'*(x -(',α,'))² + (',β,')')
          print('')
          print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
        elif a < 0:
          print('f(x)<0 pour x ∈ ]-∞ ;',x1,'[ ∪ ]',x2,'; +∞[' )
          print('f(x)>0 pour x ∈ ]',x1,';',x2,'[')
          print('')
          print('Étude des variations sur ℝ:')
          print('f est croissante sur ]-∞ ;',α,'[','puis décroissante sur ]',α,'; +∞[')
          print('')
          print('Le maximum vaut',β,'.')
          print('')
          print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
          print('La forme factorisée du polynôme du second degré s\'écrit :')
          print ('f(x) =',a,'*(x -(',x1,'))*(x -(',x2,'))')
          print('')
          print('La forme canonique du polynôme du second degré s\'écrit :')
          print ('f(x) =',a,'*(x -(',α,'))² + (',β,')')
          print('')
          print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')       
      else :
          print("x1 =",x1,"x2 =",x2)
          print('Calcul des coordonnées du sommet S(α;β) de la parabole :')  
          print('S(',α,';',β,')')
          print('')
          print('Étude de signes sur ℝ:')
          if a > 0:
              print('f(x)>0 pour x ∈ ]-∞ ;',x2,'[ ∪ ]',x1,'; +∞[' )
              print('f(x)<0 pour x ∈ ]',x2,';',x1,'[')
              print('')
              print('Étude des variations sur ℝ:')
              print('f est décroissante sur ]-∞ ;',α,'[','puis croissante sur ]',α,'; +∞[')
              print('')
              print('Le minimum vaut',β,'.')
              print('')
              print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
              print('')
              print('La forme factorisée du polynôme du second degré s\'écrit :')
              print ('f(x) =',a,'*(x -(',x2,'))*(x -(',x1,'))')
              print('')
              print('La forme canonique du polynôme du second degré s\'écrit :')
              print ('f(x) =',a,'*(x -(',α,'))² + (',β,')')
              print('')
              print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
          elif a < 0:
              print('f(x)<0 pour x ∈ ]-∞ ;',x2,'[ ∪ ]',x1,'; +∞[' )
              print('f(x)>0 pour x ∈ ]',x2,';',x1,'[')
              print('')
              print('Étude des variations sur ℝ:')
              print('f est croissante sur ]-∞ ;',α,'[','puis décroissante sur ]',α,'; +∞[')
              print('')
              print('Le maximum vaut',β,'.')
              print('')
              print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
              print('La forme factorisée du polynôme du second degré s\'écrit :')
              print ('f(x) =',a,'*(x -(',x1,'))*(x -(',x2,'))')
              print('')
              print('La forme canonique du polynôme du second degré s\'écrit :')
              print ('f(x) =',a,'*(x -(',α,'))² + (',β,')')
              print('')
              print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
  elif Δ == 0:
    print('Δ = 0, donc le polynôme du second degré admet une racine réelle unique.')
    x0=(-b)/(2*a)
    print("x0 = ",x0)
    print('')
    print('Calcul des coordonnées du sommet S(α;β) de la parabole :')  
    print('S(',α,';',β,')')
    print('')
    print('Étude de signes sur ℝ:')
    if a > 0:
      print('f(x)>0 pour x ∈ ]-∞;+∞[')
      print('')
      print('Étude des variations sur ℝ:')
      print('f est décroissante sur ]-∞ ;',α,'[','puis croissante sur ]',α,'; +∞[')
      print('')
      print('Le minimum vaut',β,'.')
      print('')
      print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
      print('')
      print('La forme factorisée du polynôme du second degré s\'écrit :')
      print ('f(x) =',a,'*(x -(',x0,'))²')
      print('')
      print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
    elif a < 0:
      print('f(x)<0 pour x ∈ ]-∞;+∞[' )
      print('')
      print('Étude des variations sur ℝ:')
      print('f est croissante sur ]-∞ ;',α,'[','puis décroissante sur ]',α,'; +∞[')
      print('')
      print('Le maximum vaut',β,'.')
      print('')
      print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
      print('')
      print('La forme factorisée du polynôme du second degré s\'écrit :')
      print ('f(x) =',a,'*(x -(',x0,'))²')
      print('')
      print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
  else :
    print('Δ < 0, le polynôme du second degré n\'admet aucune racine réelle. S=∅')
    print('')
    print('Calcul des coordonnées du sommet S(α;β) de la parabole :')  
    print('S(',α,';',β,')')
    print('Étude de signes sur ℝ:')
    if a > 0:
      print('f(x)>0 pour x ∈ ]-∞;+∞[' )
      print('')
      print('Étude des variations sur ℝ:')
      print('f est décroissante sur ]-∞ ;',α,'[','puis croissante sur ]',α,'; +∞[')
      print('')
      print('Le minimum vaut',β,'.')
      print('')
      print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
      print('')
      print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
    elif a < 0:
      print('f(x)<0 pour x ∈ ]-∞;+∞[' )
      print('')
      print('Étude des variations sur ℝ:')
      print('f est croissante sur ]-∞ ;',α,'[','puis décroissante sur ]',α,'; +∞[')
      print('')
      print('Le maximum vaut',β,'.')
      print('')
      print('La parabole admet un axe de symétrie d\'équation x =',α,'.')
      print('')
      print('Si besoin de cours de mathématiques, de méthodologie ou d\'un coaching scolaire rendez-vous sur http://bordeauxmaths.fr')
Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution – Pas d’Utilisation Commerciale – Partage dans les Mêmes Conditions 4.0 International.
Si vous avez aimé ce programme enrichi et qu’il vous a été utile, je vous remercie par avance du don symbolique que vous pourrez effectuer.

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.