谁帮我解决一下一个小问题~~(30分)

  • 主题发起人 谁帮我忙~
  • 开始时间

谁帮我忙~

Unregistered / Unconfirmed
GUEST, unregistred user!
在delphi里,怎样对一个小数进行四舍五入变成整数,请说的详细一些,谢谢~~
 
var
s:string;
i:real;
begin
i:=456.576;//随便写的值
str(i:0:2,s);//此时s值为456.58
end;
说明:
str(i:0:i1,s);
i为数据源,即想四舍五入的数,i1为欲保留的位数,取整时设为0就可以了,
得到一个字符型返回值,赋给变量s,需要时再转化就可以了
 
round()
几个相关的函数
Trunc()向0方向舍
Floor()向-Infinity方向舍
Ceiling()向+Infinity方向舍


 

round不是很安全哦。例如
showmessage(vartostr(round(4.5)));

ceiling应为ceil,uses math;
 
接受答案了.
 
var
i: real;
j: integer;
begin
i:= 4.5;
j:= trunc(i);
if(i-j>=0.5) then
j:= j+1;
showmessage(inttostr(j));
end;
 
顶部