所以我用Python做了一个四边形方程求解器,在计算的时候,出现了一个错误,我不知道是怎么回事。
from math import sqrt
a = float(input("a: "))
b = float(input("b: "))
c = float(input("c: "))
Z = (b * b) - (4 * a * c)
x1 = ((-b) + float(sqrt(Z))) / (2 * a)
x2 = ((-b) - float(sqrt(Z))) / (2 * a)
print("x = " + str(x1))
print("x = " + str(x2))
这是代码。
这可能是因为如果 (4 * a * c)
> (b * b)
Z变成了负数,而负数的平方根会导致一个虚数。math.sqrt()
不取负参数.编辑:正如@jakub所说的那样,你可以尝试获取绝对值的平方根。