根据用户输入的数值 计算二元一次方程的根(包括复数情况)
效果:
ax²+bx+c=0
enter a:3
enter b:9
enter c:3
3.0x²+9.0x+3.0=0→ x=-0.3819660112501051 or x=-2.618033988749895
ax²+bx+c=0
enter a:1.5
enter b:-3
enter c:6
1.5x²+-3.0x+6.0=0→ x=(1+1.7320508075688774j) or x=(1-1.7320508075688774j)
代码:
import math
import sys #用于将浮点数与0比较
import cmath #import cmath是用于计算复数的平方根函数
def get_float(msg,allow_zero): #获取用户输入函数,并判断是否为浮点值和能否为0,allow_zero是布尔值,指定是否可以输入0
x=None
while x is None:
try : #这里的try可使得当用户输入的不是数值是提示出错,但循环继续,如果没有try,函数就会中断