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.

Spróbuj w Edytorze

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}")
Wyjście terminala
Roots of x^2 - 5x + 6 = 0:
Root 1: 2.0
Root 2: 3.0

Wdraż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.

Powiązane tematy