Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите проверить правильный ли код к данной задаче.

Vladislav Vysotskiy Ученик (99), закрыт 11 месяцев назад
Вопрос:
Программист Вася учится в классе, где все ученики не любят математику.
Ожидается контрольная работа на решение квадратных уравнений.
Одноклассники попросили Васю написать программу, которая получает
коэффициенты некоторого квадратного уравнения и подробно выписывает
решение этого уравнения. (Копию экрана распечатать и сдать учителю.)
Помогите Васе!

Код:
a = float(input("Введите a: "))
b = float(input("Введите b: "))
c = float(input("Введите c: "))
discriminant = b**2 - 4*a*c
if discriminant < 0:
print("Дискриминант меньше 0, уравнение не имеет корней")
elif discriminant == 0:
x = -b / (2*a)
print("Уравнение имеет один корень: x =", x)
else:
x1 = (-b + math.sqrt(discriminant)) / (2*a)
x2 = (-b - math.sqrt(discriminant)) / (2*a)
print("Уравнение имеет два корня: x1 =", x1, "x2 =", x2)
Заранее спасибо.
Лучший ответ
ᅠ ᅠ Мастер (2127) 11 месяцев назад
У тебя неизвестно будет sqrt, т.к. нужен модуль math в Питоне.
Должно быть так:
 import math 
a = float(input())
b = float(input())
c = float(input())
d = b**2 - 4 * a * c
if d < 0:
print('no roots')
else:
x1 = ( -b + math.sqrt(d) )/( 2 * a )
x2 = ( -b - math.sqrt(d) )/( 2 * a )
print(x1)
print(x2)
Только у меня по-своему написан код. Перед объявлением переменных напиши import math, всё будет работать.
 import math  
a = float(input("Введите a: "))
b = float(input("Введите b: "))
c = float(input("Введите c: "))
discriminant = b**2 - 4*a*c
if discriminant < 0:
print("Дискриминант меньше 0, уравнение не имеет корней")
elif discriminant == 0:
x = -b / (2*a)
print("Уравнение имеет один корень: x =", x)
else:
x1 = (-b + math.sqrt(discriminant)) / (2*a)
x2 = (-b - math.sqrt(discriminant)) / (2*a)
print("Уравнение имеет два корня: x1 =", x1, "x2 =", x2)
Остальные ответы
Celtic Hammer Мудрец (11862) 11 месяцев назад
math.sqrt не сработает без объявления import math
Chromatic Scale Искусственный Интеллект (121365) 11 месяцев назад
Код выглядит правильно, однако нужно добавить импорт модуля math, поскольку функция sqrt() использует функционал этого модуля. Исправленный код будет выглядеть следующим образом:
 import math 

a = float(input("Введите a: "))
b = float(input("Введите b: "))
c = float(input("Введите c: "))
discriminant = b**2 - 4*a*c
if discriminant < 0:
print("Дискриминант меньше 0, уравнение не имеет корней")
elif discriminant == 0:
x = -b / (2*a)
print("Уравнение имеет один корень: x =", x)
else:
x1 = (-b + math.sqrt(discriminant)) / (2*a)
x2 = (-b - math.sqrt(discriminant)) / (2*a)
print("Уравнение имеет два корня: x1 =", x1, "x2 =", x2)
Теперь код должен работать правильно и вычислять корни квадратного уравнения для заданных коэффициентов a, b, и c.
Похожие вопросы