浮点数运算的相关问题

zhourongbiao 2005-08-08 05:25:57
procedure TForm1.Button1Click(Sender: TObject);
var
fLevel : double;
iLevelInt, iLevelFra : integer;
begin
{输入222.20,iLevelFra = 19}
fLevel := 222.20;
iLevelInt := Floor( fLevel );
iLevelFra := Floor(( fLevel - iLevelInt ) * 100);
ShowMessage( IntToStr( iLevelFra ) );
end;

怎么输出是19?调试发现iLevelFra = 20!
如果直接使用:
ShowMessage( IntToStr( Floor(20) ) );
输出就是20。
奇怪,请高手指教。
...全文
69 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hqhhh 2005-08-08
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var
fLevel : double;
iLevelInt, iLevelFra : integer;
begin
{输入222.20,iLevelFra = 19}
fLevel := 222.20;
iLevelInt := Trunc( fLevel );
iLevelFra := Trunc(( fLevel - iLevelInt ) * 100);
ShowMessage( IntToStr( iLevelFra ) );
end;

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧