题目
代码
import math
while True:
try:
a,b,c=map(float,input().strip().split())
delta = b*b - 4*a*c
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
if x1>=x2:
print('{:.2f} {:.2f}'.format(x1,x2))
else:
print('{:.2f} {:.2f}'.format(x2,x1))
except:
break
记录
本题在第一次提交代码时,x的计算我写为 (...)/2*a
,但依然提交通过,查阅本题题解才发现这个问题。
此处理应写为 (...)/(2*a)
或 (...)/2/a
,像题解作者所说,这个事情不科学且不合理。
也许与编程语言的一些底层处理有关?希望有大佬可以告知!