为了账号安全,请及时绑定邮箱和手机立即绑定

为什么计算结果和答案不同?

import math


def quadratic_equation(a, b, c):

    x1=(-b+math.sqrt(b**2-4.0*a*c))/2.0*a

    x2=(-b-math.sqrt(b**2-4.0*a*c))/2.0*a

    return x1,x2

print quadratic_equation(2, 3, 0)

print quadratic_equation(1, -6, 5)


代码可以运行,但是答案提示错误

正在回答

2 回答

因为你/2.0*a没有用括号括起来

实际上运行的是先/2.0再*a

x1=(-b+math.sqrt(b**2-4.0*a*c))/(2.0*a)

x2=(-b-math.sqrt(b**2-4.0*a*c))/(2.0*a)

就可以了

0 回复 有任何疑惑可以回复我~

不需要用2.0和4.0 你可以测下 sqrt函数运算完就是浮点型 

print math.sqrt(3**2-4*2*0)

结果是3.0

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758627    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

为什么计算结果和答案不同?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信