ax*x+bx+c的模式
由用户输入a,b,c的值,直接输出方程的解(有理数,复数)
考虑到2种情况
(1)a不等于零
1)b*b-4*a*c 的值大于零,直接用求根公式
2)b*b-4*a*c 的值小于零,考虑到复数情况
(2)a等于零,此时考虑到不能让分母有零,所以将定义部分加到了if语句里面
看作一元一次方程求解
a=float(input("请输入a的值"))
b=float(input("请输入b的值"))
c=float(input("请输入c的值"))
if a!=0:
d1 = float(b * b - 4 * a * c)
d2 = pow(d1, 0.5)
k1 = -b + d2
k2 = -b - d2
x1 = k1 / (2 * a)
x2 = k2 / (2 * a)#方程的根是实根
d3 = float(4 * a * c - b * b)
d4 = pow(d3, 0.5)
k3 = -b + d3
k4 = -b + d4
x3 = k3 / (2 * a)
x4 = k4 / (2 * a)#方程的根是虚根
if d1>0:
print("方程 {}xx+{}x+{}的根是 {},{}".format(a,b,c,x1,x2))
else:
print("方程 {}xx+{}x+{}的根是 {}i,{}i".format(a,b,c,x3,x4))
else:
print("方程的根是{}".format(-(b/c)))