import math
import cmath
def sol(a,b,c):
#判断b的平方是否大于4ac,大于等于的时候是实数根,小于的时候是复数根(cmath相比与math的区别是cmath是复数运算)
if b**2 >= 4*a*c :
sqrt = math.sqrt(b**2 - 4*a*c)
x1 = (-b + sqrt) / (2 * a)
x2 = (-b - sqrt) / (2 * a)
print("第一个根是:", x1)
print("第二个根是:", x2)
else:
sqrt = cmath.sqrt(b**2 - 4 * a * c)
x1 = (-b + sqrt) / (2 * a)
x2 = (-b - sqrt) / (2 * a)
#复数格式化输出实数+复数小数点后三位
print("第一个根是{0}+{1:0.3f}j".format(x1.real, x1.imag))
print("第二个根是{0}+{1:0.3f}j".format(x2.real, x2.imag))
if __name__ == '__main__':
a = float(input("请输入第一个参数"))
b = float(input("请输入第二个参数"))
c = float(input("请输入第三个参数"))
sol(a,b,c)
二次方程式 ax**2 + bx + c = 0(用python实现,区分实数根与复数根)
最新推荐文章于 2023-10-05 20:10:37 发布