Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 2, 2016 14:21:18

error654
Зарегистрирован: 2016-07-30
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

нужна помощь. Дискриминант квадратного уравнения, комплексное число.

Вопрос общем вот в чем, есть программа вычисляет корни квадратного уравнения, при D < 0 вылетает ошибка
Traceback (most recent call last):
File “/Users/PycharmProjects/python/function.py”, line 7, in <module>
elif D > 0:
TypeError: unorderable types: complex() > int()
Я понимаю, что D является комплексным числом и его нельзя сравнить с нулем, в этом случае я не понимаю как D сравнить с нулем.

 print("Function ax^2 + bx + c = 0")
a = float(input("Enter (a) number: "))
b = float(input("Enter (b) number: "))
c = float(input("Emter (c) number: "))
D = (((b ** 2) - 4 * a * c) ** 0.5)
if D == 0:
    print("D = {}".format(D), "x = {}".format(-b / (2 * a)))
elif D > 0:
    x1 = (-b + ((b ** 2 - 4 * a * c) ** .5)) / (2 * a)
    x2 = (-b - ((b ** 2 - 4 * a * c) ** .5)) / (2 * a)
    print("D = {}, D > 0 {}x^2 + {}x + {} = 0".format(D, a, b, c))
    print("x1 = {}, x2 = {}".format(x1, x2))
else:
    print(" D = {}, D < 0 No real roots".format(D))

Офлайн

#2 Авг. 2, 2016 20:26:03

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

нужна помощь. Дискриминант квадратного уравнения, комплексное число.

error654
я не понимаю как D сравнить с нулем.
сравнивайте до того как оно станет комплексным



Офлайн

#3 Авг. 2, 2016 22:31:33

error654
Зарегистрирован: 2016-07-30
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

нужна помощь. Дискриминант квадратного уравнения, комплексное число.

doza_and
сравнивайте до того как оно станет комплексным

Да, действительно, кода убрал квадратный корень из формулы дискриминанта, а корень стал извлекать только при D > 0 то все заработало. Спасибо большое!
Однако, в тексте задания вот такой текст (в приложении). Получается не корректное задание?

Прикреплённый файлы:
attachment Снимок экрана 2016-08-02 в 22.30.31.png (113,6 KБ)

Офлайн

#4 Авг. 2, 2016 23:33:12

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

нужна помощь. Дискриминант квадратного уравнения, комплексное число.

error654
Получается не корректное задание?
Да некорректное.
https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%BD%D0%BE%D0%B5_%D1%83%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5
Дискриминант без корня.



Офлайн

#5 Авг. 3, 2016 02:08:06

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9890
Репутация: +  854  -
Профиль   Отправить e-mail  

нужна помощь. Дискриминант квадратного уравнения, комплексное число.

error654
Получается не корректное задание?
Да пропёрся автор, этот дискриминант выводится прямо из исходного уравнения (корень никак не получишь там).



Отредактировано py.user.next (Авг. 3, 2016 02:08:34)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version