Top.Mail.Ru
Ответы

Напишите пж программу на Python

Напишите программу, которая находит и выводит в выводе количество корней в уравнении ax^3 + bx^2 + cx + d = 0. (если таковых нет., программа выводит символ *) Заранее проверьте
a = 1, b = 2, c = 3, d = 4 (количество корней - 1)
a = 0, b = 1, c = 1, d = 1 (количество корней - 0)
a = 0, b = 0, c = 34, d = 5 (количество корней - 1)

По дате
По рейтингу
Аватар пользователя
Новичок
12345678910111213141516171819202122232425262728293031323334353637
 a = float(input("Введите значение коэффициента a: "))  
b = float(input("Введите значение коэффициента b: "))  
c = float(input("Введите значение коэффициента c: "))  
d = float(input("Введите значение коэффициента d: ")) 
 
if a != 0: 
    #Кубическое уравнение ax^3 + bx^2 + cx + d = 0 
    discriminant = 18*a*b*c*d - 4*b**3*d + b**2*c**2 - 4*a*c**3 - 27*a**2*d**2 
    if discriminant > 0: 
        print(3) 
    elif discriminant == 0: 
        if b**2 == 3*a*c: 
            print(1) 
        else: 
            print(2) 
    else: 
        print(1) 
 
elif b != 0: 
    #Квадратное уравнение bx^2 + cx + d = 0 
    discriminant = c**2 - 4*b*d 
 
    if discriminant > 0: 
        print(2) 
    elif discriminant == 0: 
        print(1) 
    else: 
        print('*') 
 
else: 
    #Линейное уравнение cx + d = 0 
    if (c != 0 and d != 0) or (c != 0 and d == 0): 
        print(1) 
    elif c == 0 and d != 0: 
        print('*') 
    else: 
        print('∞')