Создайте программу, которая вычисляет и выводит на экран корни квадратного уравнения ax² + bx + c = 0. При этом

  • 36
Создайте программу, которая вычисляет и выводит на экран корни квадратного уравнения ax² + bx + c = 0. При этом необходимо запросить значения коэффициентов уравнения в диалоговом режиме.
Yaroslav
30
Для решения задачи по созданию программы, которая вычисляет и выводит на экран корни квадратного уравнения \(ax^2 + bx + c = 0\), мы можем использовать формулу дискриминанта.

Формула дискриминанта выглядит следующим образом:
\[D = b^2 - 4ac\]

Затем, основываясь на значении дискриминанта, мы можем определить, какие корни имеет квадратное уравнение:

1. Если дискриминант D больше нуля (\(D > 0\)), то квадратное уравнение имеет два различных корня. Формулы для нахождения корней в этом случае:
\[x_1 = \frac{{-b + \sqrt{D}}}{{2a}}, \quad x_2 = \frac{{-b - \sqrt{D}}}{{2a}}\]

2. Если дискриминант D равен нулю (\(D = 0\)), то квадратное уравнение имеет один корень, который является кратным:
\[x = \frac{{-b}}{{2a}}\]

3. Если дискриминант D меньше нуля (\(D < 0\)), то квадратное уравнение не имеет действительных корней. Здесь можно сообщить пользователю, что его уравнение не имеет решений.

Давайте решим эту задачу по шагам. Для начала, попросим пользователя ввести значения коэффициентов \(a\), \(b\) и \(c\) уравнения:

python
a = float(input("Введите значение коэффициента a: "))
b = float(input("Введите значение коэффициента b: "))
c = float(input("Введите значение коэффициента c: "))


Затем, вычислим дискриминант по формуле:
python
D = b2 - 4*a*c


После этого, проверим значения дискриминанта, чтобы определить тип корней уравнения:
python
if D > 0:
x1 = (-b + sqrt(D)) / (2*a)
x2 = (-b - sqrt(D)) / (2*a)
print("Уравнение имеет два различных корня:")
print("x1 =", x1)
print("x2 =", x2)

elif D == 0:
x = -b / (2*a)
print("Уравнение имеет один корень:")
print("x =", x)

else:
print("Уравнение не имеет действительных корней.")


Теперь, полный код программы будет выглядеть следующим образом:
python
from math import sqrt

a = float(input("Введите значение коэффициента a: "))
b = float(input("Введите значение коэффициента b: "))
c = float(input("Введите значение коэффициента c: "))

D = b
2 - 4*a*c

if D > 0:
x1 = (-b + sqrt(D)) / (2*a)
x2 = (-b - sqrt(D)) / (2*a)
print("Уравнение имеет два различных корня:")
print("x1 =", x1)
print("x2 =", x2)

elif D == 0:
x = -b / (2*a)
print("Уравнение имеет один корень:")
print("x =", x)

else:
print("Уравнение не имеет действительных корней.")


Таким образом, данная программа будет запрашивать значения коэффициентов квадратного уравнения и выводить на экран соответствующие корни.