rt

解决方案 »

  1.   

    你看看ieee标准把,这个提法本身就是错误的
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var I:real;
        temp:string;
    begin
            I:=1.222;
            temp:=floatToStr(I);
            showmessage(IntToStr(length(temp)-pos('.',temp)));
    end;
      

  3.   

    一般可以类似下面的方法。不过,取得小数点后面位数有什么意义呢?
    1.0可能计算机表示为0.99999999999999999999999999,不知道你想要做什么................
        strTemp:string;
        len:integer;
        a:real;
    begin
        a:=12.312341234;
        strTemp:=FloatToStr(a);
        len:=Length(strTemp)-Pos('.',strTemp);
      

  4.   

    var
     a:real;
     len:integer;
    begin
     a:=13.669;
     a:=frac(a);
     len:=length(floattostr(a))-2;
    end;---------->length 3