zoukankan      html  css  js  c++  java
  • 判断浮点数是否相等

    在delphi中:

    uses Math;

    procedure TForm1.FormCreate(Sender : TObject);

    var

      a : Double;

      b : Double;

    begin

      //初始化a,b.

      ShowMessage(FloatToStr(Max(a,b))); 

    end;

    在delphi中,函数Max可以重载。所以,Max可以判断各种数值类型。另外还有函数Min,使用方法和Max相同。这种做法只能在delphi中才能使用,在其他的语言中需要人为的写函数进行判断。

    比如用C++语言:

    // C/C++中只能近似的判断出浮点数大小,因此需要使用结合相对误差和绝对误差来判断。

    float Max(float a, float b,float error)
    {
        if(a==b)
            cout<<"a=b"<<endl;
        else if((a-b)>0 && (a-b)/a>error)
            cout<<"a与b相差大于相对误差"<<endl;
        else if((b-a)>0 && (b-a)/a>error)
            cout<<"a与b相差大于相对误差"<<endl;
        else
            cout<<"a与b近似相等"<<endl;
        return 0;
    }
    void main()
    {
        //float a ,b;
        Max(0.1000001,0.1000010,0.00001);
    }

  • 相关阅读:
    个人总结
    第二次冲刺 10
    第二次冲刺 09
    第二次冲刺 08
    第二次冲刺 07
    团队冲刺第七天
    团队绩效评估
    团队冲刺第六天
    团队冲刺第五天
    团队冲刺第四天
  • 原文地址:https://www.cnblogs.com/Blogs-young-chan/p/4680291.html
Copyright © 2011-2022 走看看