delphi,as中的四舍五入问题

 困惑我好长时间,终于在网上找到了答案,还是网络好啊!感谢网络,以下是自己写的心得,算是原创吧.
写出最简单的实现,希望对和我一样的新手朋友有帮助。(写flash as时也会用到的)

1.RoundTo---需要在uses中加入Math
保留浮点数到小数点后特定位,四舍五入,当然也可以保留到整数如下:
label2.Caption := FloatToStr(RoundTo(k, -2));    //此句要用Math
label2.Caption := FloatToStr(RoundTo(k, 2));   //此句要用Math
假如
k : Double = 7777.777;
上面结果分别为:
7777.78
7800

2. Format
注意直接输出字符型,不需要FloatToStr();
Label1.Caption := Format('%.2f',[k]);

假如
k : Double = 7777.777;
结果为:
7777.78

假如
   k : Double = 7777;
结果为:
7777.00
这个用途较多,可以让输出结果整齐划一,特别是在标坐标轴时.

3.另外还有Round,Trunc
Round可以实现四舍五入,
Trund可以实现整数截断,不进行四舍五入.

来源:http://hi.baidu.com/nsgtao/ 
posted @ 2010-07-09 16:38  苔苔以苔苔以苔  阅读(310)  评论(0编辑  收藏  举报
猪先飞