这道题里,要求对代表任何带小数点数值的变量,导出四舍五入后的整数值。
第一反应是用小数点后的1位除以5,得到0或1,再提出来。 可行,但题目要求不用if,round,甚至int等函数。
思考良久,才想起,用小数点后1位,加上0.5,也能满足条件。
x = 3.14159 # x可改为任意值
x1= x+0.5
t = str(x1).find('.')
print str(x1)[:t]
代码如此简单。原来我们在学会更多的同时,却常忘了读小学时之间快速的思考方式。
本文介绍了一种不使用标准函数如if、round或int的情况下,实现任意浮点数四舍五入到最接近整数的方法。通过向浮点数添加0.5并截断小数部分来达到目的。
这道题里,要求对代表任何带小数点数值的变量,导出四舍五入后的整数值。
第一反应是用小数点后的1位除以5,得到0或1,再提出来。 可行,但题目要求不用if,round,甚至int等函数。
思考良久,才想起,用小数点后1位,加上0.5,也能满足条件。
x = 3.14159 # x可改为任意值
x1= x+0.5
t = str(x1).find('.')
print str(x1)[:t]
代码如此简单。原来我们在学会更多的同时,却常忘了读小学时之间快速的思考方式。

被折叠的 条评论
为什么被折叠?