Programme Python pour résoudre une équation quadratique

Voici comment écrire un programme Python pour résoudre une équation du second degré de la forme “ax^2 + bx + c = 0”:

 

import math

def solve_quadratic(a, b, c):
  # Calculer les discriminants
  discriminant = b**2 - 4*a*c
  
  # Calculer les racines
  if discriminant > 0:
    root1 = (-b + math.sqrt(discriminant)) / (2*a)
    root2 = (-b - math.sqrt(discriminant)) / (2*a)
    return (root1, root2)
  elif discriminant == 0:
    root = -b / (2*a)
    return (root,)
  else:
    return ()

# Test the function
print(solve_quadratic(1, -3, 2))  # Output: (2.0, 1.0)
print(solve_quadratic(1, 2, 1))   # Output: (-1.0, -1.0)
print(solve_quadratic(1, -7, 12)) # Output: (4.0, 3.0)

Ce programme utilise la formule générale pour résoudre une équation quadratique:

x = (-b +/- sqrt(b^2 - 4ac)) / (2a)

L'algorithme vérifie d'abord si le discriminant (b^2 - 4ac) est positif, nul ou négatif. Si le discriminant est positif, il y a deux racines réelles différentes. Si le discriminant est nul, il y a une seule racine réelle. Si le discriminant est négatif, il n'y a pas de racines réelles.

 

Please follow and like us:
Pin Share