我們有代碼等NCalc Expression.Evaluate()給出錯誤的輸出
ncalcFormula = "[OD1000]=[OD1100]+[OD1200]+[OD1350]+[OD1450]"
var expression = new Expression(ncalcFormula);
foreach (FormulaParameter fp in parsedParameters)
{
expression.Parameters[fp.QuestionKey] = fp.Value;
}
object res = expression.Evaluate();
原始表達式: - [OD1000] = [OD1100] + [OD1200] + [OD1350] + [OD1450]
在稱爲解析表達後的評估之後: - ((OD1000))=(((([OD1100])+([OD1200])+([OD1350])+([OD1450]))
通過添加參數值如下
1)9.33 = 2.25 + 3.25 + 1.5 + 2.33
2)15617031.48 15226149.36 = + 166208.00 + 0.00 + 224674.12
評價1)之後將返回true和2)雖然兩種表達是正確的將返回false。
請建議。
會員爲期4年。這是關於你學習如何在一個問題中設置自己的代碼格式的時候http://meta.stackexchange.com/questions/22186/how-do-i-format-my-code-blocks – weston
這看起來像我這樣的另一個「浮動點數不起作用「的問題。 – spender