Trova le radici delle equazioni quadratiche di Python
Risolvi equazioni quadratiche e identifica radici reali e complesse utilizzando la formula discriminante in Python.
Panoramica
Un'equazione quadratica è nella forma ax² + bx + c = 0. Per risolverla è necessaria la formula quadratica: `x = (-b ± sqrt(b² - 4ac)) / 2a`.
Il termine "b² - 4ac" è chiamato discriminante. Se positivo, ci sono due radici reali distinte. Se zero, una radice reale. Se negativo, due radici complesse.
Il modulo integrato `cmath` di Python supporta i numeri complessi, permettendoci di trovare radici anche quando il discriminante è negativo.
Codice e output di esecuzione
Risolutore robusto in grado di gestire discriminanti reali, zero e complessi.
import cmath
def find_roots(a, b, c):
d = (b**2) - (4*a*c) # discriminant
# Calculate both roots
sol1 = (-b - cmath.sqrt(d)) / (2*a)
sol2 = (-b + cmath.sqrt(d)) / (2*a)
return sol1, sol2
# Test equation: x^2 - 5x + 6 = 0
r1, r2 = find_roots(1, -5, 6)
print("Roots of x^2 - 5x + 6 = 0:")
print(f"Root 1: {r1.real:.1f}")
print(f"Root 2: {r2.real:.1f}")Roots of x^2 - 5x + 6 = 0:
Root 1: 2.0
Root 2: 3.0Implementazione passo dopo passo
- Modelli fisici e sistemi di tracciamento delle traiettorie
- Vettori di rilevamento delle collisioni geometriche
- Risolutori matematici
Domande frequenti
Perché usare `cmath` invece di `math`?
Il modulo `math` standard solleverà un ValueError se provi a prendere la radice quadrata di un numero negativo. Il modulo `cmath` (matematica complessa) gestisce automaticamente le radici immaginarie.