2011-04-20 106 views
0

我需要計算4.0468564224e-33的值。但不幸的是我得到了0.0000000的結果。我認爲問題在於e的價值。如何計算數學加倍值

如何計算這些數學計算?是否有進口數學課程的必要性?

+0

err什麼語言......它支持雙打嗎? – 2011-04-20 07:10:03

+0

可能重複? http://stackoverflow.com/questions/5717669/calculate-constant-e-value – 2011-04-20 08:04:57

回答

2

4.0468564224e-334.0468564224 * 10⁻³³,那就是0.0000000000000000000000000000000040468564224 - 非常接近於零。

如果您的輸出函數四捨五入到7個十進制數字,即使輸入正確,您也會得到0.0000000作爲輸出。

0

也許你正在使用類似

NSLog("%d", yourValue); 

,而你應該使用:

NSLog("%f", yourValue); 

,因爲你的價值是一個浮動,而不是一個整數。

%d => int 
%f => float 
+0

不,我使用%f不是%d。 – Maheshbabu 2011-04-20 07:14:07

+1

%d不會產生小數。 – ikegami 2011-04-20 07:31:07

+0

你是對的! ;-) – Abramodj 2011-04-20 07:34:01

2

Anders Lindahl解釋why你看到零,但沒有提出任何解決方案。

一種解決方案是通過使用%.43f代替%f%.7f)以請求更多的小數輸出。

另一種解決方案是要求,而不是%f通過使用%e%.10e)冪表示法。