Здравствуйте.
Вот моё решение Вам:
# Ввожу числа в программу
a = float(input())
b = float(input())
c = float(input())
# Вычисляю дискриминант
discriminant = b * b - 4 * a * c
# В зависимости от дискриминанта пишу количество корней и сами корни
if discriminant == 0:
print("У квадратичной функции 1 корень")
x = -b / (2 * a)
print(x)
elif discriminant > 0:
print("У квадратичной функции 2 корня")
x = (-b + discriminant**0.5) / (2 * a)
print(x)
x = (-b - discriminant**0.5) / (2 * a)
print(x)
else:
print("У квадратичной функции нет корней")
Из книги Бена Стивенсона сборник задач по Python
Упражнение 51. Корни квадратичной функции
(24 строки)
Общий вид квадратичной функции одной переменной имеет следующий
вид: f(x) = ax2 + bx + c, где a, b и c – константы и a не равна нулю. Корни
этой функции могут быть извлечены путем нахождения таких значений
переменной x, для которых будет соблюдаться равенство ax2 + bx + c = 0.
Эти значения могут быть вычислены с помощью формулы для корней
квадратного уравнения, показанной ниже. Квадратичная функция может
иметь от нуля до двух действительных корней.
Часть выражения под квадратным корнем называется дискриминантом. Если дискриминант отрицательный, квадратное уравнение не будет
иметь действительных корней. В случае равенства дискриминанта нулю
у квадратного уравнения будет ровно один действительный корень. Иначе корней будет два, и выражение необходимо будет вычислить дважды:
один раз со знаком плюс, второй со знаком минус для числителя.
Напишите программу, вычисляющую действительные корни квадратичной функции. Сначала вы должны запросить у пользователя значения
a, b и c. После этого должно быть выведено на экран количество действительных корней функции и их значения.