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

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

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

Код:
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)
Заранее спасибо.
Лучший ответ
ᅠ ᅠ Мастер (2130) 1 год назад
У тебя неизвестно будет 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 Мудрец (13347) 1 год назад
math.sqrt не сработает без объявления import math
Chromatic Scale Искусственный Интеллект (145548) 1 год назад
Код выглядит правильно, однако нужно добавить импорт модуля 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.
Похожие вопросы