求解(-b+√(b*b-4ac))/(2a)的代码:
import math
#int(x) 可以把x(字符型)转化为int型 输入时要用逗号比如: 1,2,3且只能输入3个数字
a,b,c=[int(x)for x in raw_input().split(',')] #输入3个字符数字转化为可以计算的数字
#a,b,c=input('请输入a,b,c的值:').strip().split()
#a=input()
#b=input() #太麻烦了
#c=input()
print a,b,c
if (b*b-4*a*c)>0:
s_bb4ac=math.sqrt(b*b-4*a*c)
#print 's_bb4ac=%f'%s_bb4ac
print 'X1=%f'%((-b+s_bb4ac)/(a*2))
print 'X2=%f'%((-b-s_bb4ac)/(a*2))
if (b*b-4*a*c)==0:
print 'X1=X2=%f'%(-b/(a*2))
else:
print '方程无解'
最好先计算b*b-4ac>0的情况,以防出现√负值的系统错误,虽然那样也能计算出错误
新人小白,没用Python自带的lambda函数。
附带lambda函数算法的链接