Форум сайта python.su
Не могу понять ошибку. Следующий код работает, только для уравнения, например, 5x^2 + 10x - 15 = 0, получаются не положенные “1” и “-3”, а загадочные “25.0” и “-75.0”. Уже весь монитор проел насквозь, но ошибки в формулах не вижу! Подскажите пожалуйста, может это глюки какие? Код такой:
a = input(“Input a:”)
b = input(“Input b:”)
c = input(“Input c:”)
D = b**2 - 4 * a * c
if D == 0:
print(“There is one root”)
import math
x=-b/2*a
print “x =” , x
raw_input(“Operation completed. Press enter to exit”)
elif D > 0:
print(“There are two roots”)
import math
x1 = (-b + math.sqrt(D))/2*a
x2 = (-b - math.sqrt(D))/2*a
print “x1 =” , x1, “x2 =” , x2
raw_input(“Operation completed. Press enter to exit”)
else:
print (“There are no roots”)
raw_input(“Press enter to exit”)
Офлайн
FILLIPOтвоя ошибка в том, что -b/2*a это тоже самое что и -b*a/2. Правильно будет -b/2/a желательно еще указать, что деление не челочисленное вот так: -b/2./a
Не могу понять ошибку. Следующий код работает, только для уравнения, например, 5x^2 + 10x - 15 = 0, получаются не положенные “1” и “-3”, а загадочные “25.0” и “-75.0”. Уже весь монитор проел насквозь, но ошибки в формулах не вижу! Подскажите пожалуйста, может это глюки какие? Код такой:
a = input(“Input a:”)
b = input(“Input b:”)
c = input(“Input c:”)
D = b**2 - 4 * a * c
if D == 0:
print(“There is one root”)
import math
x=-b/2*a
print “x =” , x
raw_input(“Operation completed. Press enter to exit”)
elif D > 0:
print(“There are two roots”)
import math
x1 = (-b + math.sqrt(D))/2*a
x2 = (-b - math.sqrt(D))/2*a
print “x1 =” , x1, “x2 =” , x2
raw_input(“Operation completed. Press enter to exit”)
else:
print (“There are no roots”)
raw_input(“Press enter to exit”)
Офлайн
Спасибо
Офлайн