python怎么算二元一次方程_教你用python解析二元一次方程
python怎么算⼆元⼀次⽅程_教你⽤python解析⼆元⼀次⽅程⼆元⼀次函数的实现
import cmath
import math
import sys
这⾥导⼊cmath包是在后⾯⽤来处理复数的情况
导⼊math使⽤来处理 平⽅ 根号等的运算
⽽导⼊sys的意义是为了⽐较0 ,在python中float的精度值不够,所以在计算复数时需要⽤到sys.float_info.epsilon
def get_float(msg,allow_zero):
x =None
while x is None:
try:
x= float(input(msg))
if not allow_zero and abs(x) < sys.float_info.epsilon:
#在python中float是双精度,精度不够,在⽐较时容易出错,所以需要⽤函数sys.float_info.epsilon
#sys.float_info.epsilon代表⽆限接近 0,是机器可以区分出的两个浮点数的最⼩区别
print('不允许为0')
x = None
except ValueError as err:
print(err)
return x
这个函数是⽤来读取⽤户输⼊的数字,并对其进⾏判定是否满⾜⼆元⼀次⽅程式的标准角类游戏
对输⼊值进⾏判定是否为数字类型:
是 -> 则进⾏下⼀步,将变量赋值
不是 -> 返回错误信息,并要求重新输⼊数值
print('axN{SUPERSCRIPT TWO}+bx+c=0')广东学院排名
#N{SUPERSCRIPT TWO} 代表显⽰上标⼀个2
ax²+bx+c=0
a = get_float('enter a: ',False)
b = get_float('enter b: ',True)
c = get_float('enter c: ',True)
x1 = None
x2 = None
discriminant = (b**2)-(4*a*c)
在atm机上倒着输入密码会报警吗if discriminant == 0:
x1 = -(b/(2*a))
else:居住证明范文
if discriminant >0:
root = math.sqrt(discriminant)
else:
root = cmath.sqrt(discriminant)
x1 = (-b+root)/(2*a)
x2 = (-b-root)/(2*a)
equation = ("{0}xN{SUPERSCRIPT TWO}+{1}x+{2}=0" " N{RIGHTWARDS ARROW} x={3}").format(a,b,c,x1) # N{RIGHTWARDS ARROW} 代表显⽰⼀个箭头标识(→) if x2 is not None:
equation +=' or x={0}'.format(x2)
print(equation)
enter a: 1
enter b: 2
enter c: 1
1.0x²+
关于读书的作文2.0x+1.0=0 → x=-1.0
取到a b c 的值后 对(b²-4ac)进⾏计算,
服务器内存
当计算出来的值为0时,表⽰只有⼀个解为
当计算出来的值⼤于0时,表⽰有两个解
当计算出来的值⼩于0时,表⽰有两个复数解

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。