c#如何检查数字是否为无穷大

时间:2017-03-11 09:39:21

标签: c#

我有点问题。我有两个双变量,每个变量的值为1 * 10 ^ 250。现在,如果我将这两个值相乘,我得到的结果也是一个双变量。问题是乘法的结果给了我无穷大的值,但我想阻止它并给出一个错误信息。如果有人知道如何识别数字是无穷大,那就太好了。

4 个答案:

答案 0 :(得分:12)

答案 1 :(得分:2)

使用

double.IsInfinity(theDoubleNumber);

你也可以使用double.IsNegativeInfinity(),double.IsPositiveInfinity(),double.NaN(),double.MaxValue(),double.MinValue()用于类似用途

答案 2 :(得分:0)

   **try this.....**
    if (Double.IsInfinity(SampleVar))
    {
      //Put your  logic here.
    }
    if (Double.IsNaN(SampleVar))
    {
      //Put your  logic here.
    }

答案 3 :(得分:-3)

提取2个变量的对数然后添加它们就足够了。 在乘以捕获错误之前,如果要乘以的变量是A和B,请遵循以下伪代码:

#include <math.h>
Double A,B,L1,L2;
Boolean MYERROR;
main(){
L1 = LOG10(A);
L2 = LOG10(B);
If( (L1 + L2) > DBL_MAX_10_EXP){ MYERROR = true;}else{MYERROR = false;}
}