2013-03-13 25 views
0

我遇到以下XSL代碼的問題。XSLT減法

這是非常簡單的減法,但它做了一些奇怪的事情。我知道我可以使用format-number,但有人可以向我解釋爲什麼我得到0.4299999999999997而不是預期的0.43

<xsl:template match="/"> 
    <root> 
     <xsl:value-of select="36.98 - 36.55"></xsl:value-of> 
    </root> 
</xsl:template> 
+0

找到一個答案。 警告對於某些XSLT處理器,使用十進制數可能會引入一個小錯誤。例如,本例中的「3.2-4」在某些處理器上以「-.7999999999999998」出現。雖然被忽視了.0000000000000002並不多,但根本沒有顯示數學不是XSLT的強項。 – Tyde 2013-03-13 10:51:42

+0

這不是關於xslt。這是關於如何在計算機中表示浮點數。使用float/double類型時,幾乎可以在任何語言中獲得類似的結果。 – Pawel 2013-03-13 22:03:13

回答