2013-06-18 63 views
-1

我有一個奇怪的問題。我從網上音頻API抓住數字,我出去是一個恆定的名單:奇數與舍入和乘法

3.1051260268969075e-28等等等等

我要圓這個數字,但是使用:

Math.round(magAmount); 

總是返回0. magAmount是我存儲數字的變量。另一個奇怪的事情是,如果我將數字乘以5,我會得到一個低於原始值的值,在本例中爲1.5525630134484537e-27。

任何想法?

謝謝。

+0

您好像不知道數字結尾的小電子28是什麼意思。 – 2013-06-18 16:16:54

+0

是的,不理我,我錯過了。新的早晨,問題解決了。 – mrEmpty

回答

3

Math.round()將舍入到下一個整數,因此四捨五入0.0000000000..00001(你正在做的)將輪0

也是E-27是比E-28大,所以你乘以正確

5

這個數字是5倍大。

E-28是小於E-27

4

注意e-28*10^-28,所以沒有什麼奇怪的在你的代碼。

由於這個數字很小,舍入它肯定會返回0

1

圓到什麼精度?如果你想

3.1051260268969075e-28 - > 3.1E-28則

Math.round(3.1051260268969075e-28 * 1.0E + 29)* 1.0E-29