2026. június 11., csütörtök

Másodfokú egyenlet

Íme egy hasznos és szemléletes példa egy gyakori matematikai probléma, a másodfokú egyenlet (ax² + bx + c = 0) megoldására. A Python program bekéri az együtthatókat, ellenőrzi a diszkrimináns értékét (Δ = b² - 4ac), és kiírja a valós vagy komplex gyököket.

------------------------

import cmath

def masodfoku_megoldo(a, b, c):
    # Diszkrimináns kiszámítása
    delta = (b ** 2) - (4 * a * c)

    # Megoldások meghatározása
    if delta > 0:
        x1 = (-b - cmath.sqrt(delta)) / (2 * a)
        x2 = (-b + cmath.sqrt(delta)) / (2 * a)
        return f"Két különböző valós gyök van: x1 = {x1.real}, x2 = {x2.real}"
    elif delta == 0:
        x = -b / (2 * a)
        return f"Egy darab valós gyök (kettős gyök) van: x = {x}"
    else:
        x1 = (-b - cmath.sqrt(delta)) / (2 * a)
        x2 = (-b + cmath.sqrt(delta)) / (2 * a)
        return f"Két komplex gyök van: x1 = {x1}, x2 = {x2}"

# Felhasználói interakció
print("Másodfokú egyenlet megoldó: ax^2 + bx + c = 0")
try:
    a = float(input("Adja meg az 'a' értékét (a != 0): "))
    if a == 0:
        print("Az 'a' nem lehet nulla!")
    else:
        b = float(input("Adja meg a 'b' értékét: "))
        c = float(input("Adja meg a 'c' értékét: "))
        eredmeny = masodfoku_megoldo(a, b, c)
        print(eredmeny)
except ValueError:
    print("Kérjük, érvényes számot adjon meg!")
--------------------
Megoldás
-------------------
Másodfokú egyenlet megoldó: ax^2 + bx + c = 0
Adja meg az 'a' értékét (a != 0): 2
Adja meg a 'b' értékét: 3
Adja meg a 'c' értékét: 4
Két komplex gyök van: x1 = (-0.75-1.1989578808281798j), x2 = (-0.75+1.198957
8808281798j)
** Process exited - Return Code: 0 **

Nincsenek megjegyzések:

Megjegyzés küldése