Wyszukiwarka pierwiastków równań kwadratowych w Pythonie
Rozwiązuj równania kwadratowe i identyfikuj pierwiastki rzeczywiste i złożone, korzystając ze wzoru dyskryminacyjnego w Pythonie.
Przegląd
Równanie kwadratowe ma postać ax² + bx + c = 0. Do jego rozwiązania potrzebny jest wzór kwadratowy: `x = (-b ± sqrt(b² - 4ac)) / 2a`.
Termin `b² - 4ac` nazywany jest dyskryminatorem. Jeśli jest dodatni, istnieją dwa różne rzeczywiste pierwiastki. Jeśli zero, jeden prawdziwy pierwiastek. Jeśli jest ujemny, dwa złożone pierwiastki.
Wbudowany moduł Pythona „cmath” obsługuje liczby zespolone, co pozwala nam znajdować pierwiastki nawet wtedy, gdy wyróżnik jest ujemny.
Dane wyjściowe kodu i wykonania
Solidny solwer zdolny do obsługi dyskryminatorów rzeczywistych, zerowych i złożonych.
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.0Wdrażanie krok po kroku
- Modele fizyczne i systemy śledzenia trajektorii
- Geometryczne wektory wykrywania kolizji
- Rozwiązania matematyczne
Często zadawane pytania
Po co używać „cmath” zamiast „math”?
Standardowy moduł matematyczny zgłosi błąd ValueError, jeśli spróbujesz obliczyć pierwiastek kwadratowy z liczby ujemnej. Moduł `cmath` (matematyka złożona) automatycznie obsługuje pierwiastki urojone.