1
雙比較給我意想不到的結果。當我增加Epsilon的0.0時,我得到一個增加的值,當我增加Epsilon的25.0時,我得到了25.0,而不是更多。我如何增加最小雙倍數的25.0來觸發比較?爲什麼使用0.0而不是25.0?雙比較失敗
<TestMethod()>
Public Sub Test()
Const epsilon As Double = Double.Epsilon
Const zero As Double = 0.0
Const zeroPlusEpsilon As Double = zero + epsilon
Const twentyfive As Double = 25.0
Const twentyfivePlusEpsilon As Double = twentyfive + epsilon
Assert.IsTrue(zero < zeroPlusEpsilon)
Assert.IsTrue(twentyfive < twentyfivePlusEpsilon) ' <-- This is failing.
End Sub
好點,我的問題,以配合我的真正的問題略有改變。 – user4388177 2015-03-31 14:15:21
@ user4388177:查看我已鏈接的問題的答案。 – 2015-03-31 15:04:00