Dans le domaine de la programmation scientifique, la résolution d’équations algébriques est une tâche fondamentale. Les équations du premier et du second degré, en particulier, sont omniprésentes dans diverses applications, allant de la physique à l’ingénierie en passant par l’économie. En Python, un langage de programmation largement utilisé pour ses capacités analytiques et sa simplicité, il est possible de créer des fonctions efficaces pour résoudre ces équations. Cet article explore comment écrire des fonctions Python pour résoudre des équations du premier et du second degré, en mettant en lumière les concepts mathématiques sous-jacents et en fournissant des exemples pratiques. Que vous soyez un débutant en programmation ou un utilisateur expérimenté cherchant à optimiser vos calculs, cet article vous guidera à travers les étapes nécessaires pour implémenter ces solutions de manière claire et concise.

Rappel sur les équations du 1er degré
On admettra que les équations du premier degré s’écrivent sous la forme : ax+b=c.
Avec
- a, b et c sont des nombres connus, et a est différent de 0 ;
- et x est un nombre inconnu.
L’équation est dite de premier degré car la plus grande puissance de l’inconnue x est 1.
Pour résoudre les équations de ce type on applique la relation suivante :
La valeur de x qui permet de vérifier l’équation est : x = (c-b) / a.
Rappel sur les équations du 2nd degré
L’équation ax2 + bx + c = 0 est une équation de degré 2. La plus grande puissance de x est 2.
Voici la méthode de résolution de ce type d’équation :
- Calculer le discriminant Δ en remplaçant a, b et c par leurs valeurs dans la formule
- Δ=b2−4ac.
- Si Δ > 0 (si le discriminant est positif), il y a deux solutions :
- (-b – racine(Δ)) / 2a
- (-b + racine(Δ)) / 2a
- Si Δ=0, il y a une solution qui vérifie l’égalité:
- -b / 2a
- Si Δ< (si le discriminant est négatif), il n’y a pas de solution dans le domaine du réel.
Solution avec fonction python
Voici le code des deux fonctions python qui permettent de résoudre les équations du 1er et 2ème degré :
def equaDegr1(a, b, c):
"""
ce code résoud les équations du 1er degré de la forme:
ax+b=c
param a: coefficient a de l'équation
param b: coefficient b de l'équation
param c: coefficient c de l'équation
return: résultat de l'équation
"""
x = (c-b)/a
return x
def equaDegr2(a, b, c):
"""
Ce programme résoud les équations de 2nd degré de la forme:
ax^2+bx+c = 0
param a: coefficient de x^2
param b: coefficient de x
param c: la constante
return: soit 2 valeurs de x qui vérifient l'égalité
ou bien la seul valeur
ou sinon un message disant que l'équation n'a pas de solution
"""
import math
descr = b**2 - 4*a*c
if descr < 0:
return "Cette équation n'a pas de solution dans le domaine du réel"
elif descr == 0:
x = -b/(2*a)
return x
else:
x1 = (-b - math.sqrt(descr))/(2*a)
x2 = (-b + math.sqrt(descr)) / (2 * a)
return (x1, x2)
J’ai utilisé 3 arguments pour chacune des 2 fonctions python. Les arguments sont obligatoires, si on mets moins de trois arguments ou plus de 3 arguments le programme renvoie une erreur d’exécution.
J’ai donné le nom de equadeg1() pour la première fonction python et equaDegr2() pour la deuxième fonction python.
Le premier programme permet de résoudre les équations du premier degré et le deuxième programme celles du deuxième degré.
Si on exécute ce programme rien ne se passera, car on n’a fait appel à aucune des fonctions.
Comment utiliser les fonctions python
On peut imaginer la situation suivante pour faire appel à l’une ou l’autre fonction. On demandera à l’utilisateur de choisir s’il veut résoudre une équation du 1er ou du 2ème degré, et en fonction de ce qu’il rentrera on utilisera la fonction python equaDegr1() ou equaDegre2().
Voici une proposition de code qui fait appel à ces deux fonctions python
<code>print("quel type d'équation voulez vous résoudre?")
print("Equation de 1er degré. Taper 1 puis entrée")
print("Equation de 2ème degré. Taper 2 puis entrée")
choix = input()
a = float(input("a = "))
b = float(input("b = "))
c = float(input("c = "))
if choix == 1:
X = equaDegr1(a, b, c)
else :
X = equaDegr2(a, b, c)
print("la solution de l'équation (s'elle existe) est : ",X)</code>
Structure de code python avec des fonctions
En conclusion, la création de fonctions Python pour résoudre des équations du premier et du second degré est un excellent moyen de renforcer vos compétences en programmation tout en approfondissant votre compréhension mathématique. Ces fonctions peuvent être intégrées dans divers projets pour automatiser des calculs complexes et améliorer l’efficacité de vos analyses. Si vous souhaitez approfondir vos connaissances, nous vous invitons à explorer notre article sur Comment structurer un programme avec des fonctions pour découvrir des techniques avancées.
N’hésitez pas à laisser un commentaire ci-dessous pour partager vos propres astuces ou poser des questions ! Votre feedback est très précieux.
merci !
de rien 😉