如何使用C#将最小和最近的数字设置为零?例如,最小且最接近的DECIMAL(DOUBLE)数字可能在一台PC上为0.000009,在另一台PC上为0.0000000000000000001.
我的意思是1/THE_MOST_LONG_INTEGER的最可能结果.
怎么弄?
我想你的意思是计算你的机器Epsilon(http://en.wikipedia.org/wiki/Machine_epsilon).
可以通过多种方式计算,例如:
double machineEpsilon = 1.0d;
do {
machineEpsilon= machineEpsilon/ 2.0d;
}
while ((double)(1.0 + machineEpsilon) != 1.0);
Run Code Online (Sandbox Code Playgroud)