课程
/后端开发
/Python
/初识Python
a = 3 b = 2 print math.sqrt(b*b/(4*a*a))
为啥结果是0呢?
2018-06-07
源自:初识Python 7-4
正在回答
b*b=4
4*a*a =36
在python中,整数和整数相除得到的还是整数,所以,4/36=0
要想得到的不是0试着把a和b定义成浮点数a = 3.0 b = 4.0
五更寒 提问者
因为a ,b是整点型。所以两数相除也是整点型,你这结果是小数所以结果位为0.如果b=2.0 a=3.0 就不会了
如果b是整型数据,在做除法算法,当分子小于分母的时候,结果就是0,故应该写为b=2.0,这样结果就不会是0.
举报
学python入门视频教程,让你快速入门并能编写简单的Python程序