请教大家,如何让float数据四舍五入保留小数点后两位?我试过用formatfloat('0.00',数据),可是不对报错,请教大家。
别外在输入一个数字时如何限定小数点后只能输两位小数呢?

解决方案 »

  1.   

    一个四舍五入函数 参考一下    function RoundEx (const Value: Real): integer;
        var
          x: Real;
        begin
          x := Value - Trunc(Value);
          if x >= 0.5 then
            Result := Trunc(Value) + 1
          else Result := Trunc(Value);
        end;
      

  2.   

    formatfloat('0.00',number) ,这个试过总是报错呢
      

  3.   

    这是偶写的一个任意位四舍五入函数,你可以试试看。。  private
        { Private declarations }
        function  MyRound_1(const yuan: Extended; const pp: Integer): Extended;
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation
    uses Math;
    {$R *.DFM}function TForm1.MyRound_1(const yuan: Extended;
      const pp: Integer): Extended;
    var
     i : extended;
    begin
      i := Power(10,pp);
      Result:=Trunc(yuan*i+0.5)/i;
    end;
      

  4.   

    呵呵,好的,谢谢猫妖还有风云暴。我刚才找了一个roundto函数,不过要加math单元,可以实现功能。唯一美中不足的是只能是5以上的才能入,如果是5的话就会舍掉