| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1261 人关注过本帖
标题:小数五舍六入的问题
只看楼主 加入收藏
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11788
专家分:43421
注 册:2006-5-13
收藏
得分:0 
对于指定位数和舍入要求的,三楼应该是最简单实用的算法。如果要考虑做成自定义函数,则可以采取接收舍入值、保留小数的位数、舍入要求三个值,然后按照幂运算的方式,分保留位数大于零和小于零(取整)两种方式进行计算,最后返回需要的值。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2012-06-18 21:13
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:27017
注 册:2012-2-5
收藏
得分:0 
回复 10楼 arefeng
? int(16/10+0.5) * 10
结果:20
? int(1.5+0.4)
=1
? int(1.5+0.5)
=2
? int(1.6+0.4)
=2



[ 本帖最后由 sdta 于 2012-6-18 21:17 编辑 ]

坚守VFP最后的阵地
2012-06-18 21:13
arefeng
Rank: 2
等 级:论坛游民
帖 子:69
专家分:61
注 册:2012-5-30
收藏
得分:0 
回复 12楼 sdta
我想我明白你的困惑了, 给你的问题加个说明如下:

? int(16/10+0.5) * 10        && 这个例子是对 16十位 上的四舍五入, 因为在十位, 所以把倍率换成10分之1
结果:20
? int(1.5+0.4)               && 这个例子是对 1.5个位 上的五舍六入
=1
? int(1.5+0.5)               && 这个例子是对 1.5个位 上的四舍五入
=2
? int(1.6+0.4)               && 这个例子是对 1.6个位 上的五舍六入
=2

现在看看得到的结果是否正确?
其实这个方法跟编程语言无关, 它是数学算法的概念.
2012-06-18 21:25
ilikeflash
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:148
专家分:186
注 册:2011-4-6
收藏
得分:0 
雅克西
2012-06-18 21:30
快速回复:小数五舍六入的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014109 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved