delphi 四舍五入取整函数


本文整理自网络,侵删。

 
一、四舍五入法
    四舍五入是一种应用非常广泛的近似计算方法,其有算术舍入法和银行家舍入法两种。
    所谓算术舍入法,就是我们通常意义上的四舍五入法。其规则是:当舍去位的数值大于等于5时,在舍去该位的同时向前位进一;当舍去位的数值小于5时,则直接舍去该位。
    所谓银行家舍入法,其实质是一种四舍六入五留双(又称四舍六入五奇偶)法。其规则是:当舍去位的数值小于5时,直接舍去该位;当舍去位的数值大于等于6 时,在舍去该位的同时向前位进一;当舍去位的数值等于5时,如果前位数值为奇,则在舍去该位的同时向前位进一,如果前位数值为偶,则直接舍去该位。
    综上所述,两种舍入法所得结果不尽一致,因此在使用时必须根据实际需要加以区别。否则会出现一些莫明其妙的偏差。
    二、Delphi中的四舍五入函数
    众所周知,Delphi中有一个四舍五入取整函数Round。但它是按银行家舍入法的规则实施舍入操作的,Delphi中没有按算术舍入法规则实施舍入操 作的四舍五入取整函数。为此,本人编写了一个基于算术舍入法的四舍五入取整函数RoundEx作为对Delphi的补充。具体实现如下: 


function RoundClassic(R: Real): Int64; 
begin 
  Result:= Trunc(R); 
  if Frac(R) >= 0.5 then 
    Result:= Result + 1; 
end; 

相关阅读 >>

Delphi中动态加载image控件图片的方法

Delphi中编写参数个数可变的函数

Delphi怎么样选择pagecontrol1的分页

Delphi 动态调用chm文件

Delphi 自带的 base64 编解码函数

Delphi获取文件或文件夹属性和修改属性

Delphi xe vcl - tlinklabel(链接标签)

Delphi savelog 方便的记录日志

Delphi 得到不同平台的录音文件保存路径

Delphi monthoftheyear、weekoftheyear、weekofthemonth、dayoftheyear … 相对时间

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...