题解 | #计算一元二次方程#

计算一元二次方程

http://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26

import math while True: try: a, b, c = map(float, input().split()) d = b * b - 4 * a * c n = math.sqrt(abs(d)) if a == 0: print('Not quadratic equation') elif d == 0: print('x1=x2=%.2f' % (-b / (2 * a) + 0.0001)) elif d > 0: print('x1=%.2f;x2=%.2f' % ((-b - n) / (2 * a) + 0.0001, (-b + n) / (2 * a) + 0.0001)) else: print('x1={0:.2f}-{1:.2f}i;x2={0:.2f}+{1:.2f}i'.format(-b / (2 * a) + 0.0001, abs(n / (2 * a) + 0.0001))) except: break

+0.001防止0变为-0

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务