解题思路:
代码参考Gu-f,他那个代码前面两个情况有错,稍微改了一下。
参考代码:
import math
while True:
try:
a, b, c = map(int, input().strip().split())
dert = (b ** 2) - (4 * a * c)
if dert > 0:
x1 = math.sqrt(dert) / (2 * a)
print("x1={:.3f} x2={:.3f}".format((0 - b)/ (2 * a)+ x1, (0 - b)/ (2 * a)-x1))
if dert == 0:
x1 = math.sqrt(dert) / (2 * a)
print("x1={:.3f} x2={:.3f}".format((0 - b)/ (2 * a)+ x1, (0 - b)/ (2 * a)-x1))
if dert < 0:
x1 = math.sqrt(0 - (((b ** 2) - (4 * a * c)) / (4 * a * a)))
print("x1={:.3f}+{:.3f}i x2={:.3f}-{:.3f}i".format((0 - (b / (2 * a))), x1, (0 - (b / (2 * a))), x1))
except:
break
0.0分
1 人评分