2017-01-13 17 views
0

我們如何從「科學」記數法中提取指數和符號?從科學記數法中獲取指數

如果我們用打印的printf( 「%LF%E」)的雙精度值就說明票面例:

normal scientific 
    ------ ---------- 
    -888.3 -8.88e2  
    1.23  1.23e0  
    3.001 3.1e-1 

該解決方案在How to get Exponent of Scientific Notation in Matlab爲正值指出只有

x = floor(log10(N)) 

作品N.用-N表示-nan(ind)。顯然Log10()與否定值是不允許的。

+0

你可以使用'abs'嗎? – qxz

+0

是的,但後來我的標誌是錯誤的 –

+0

是[this](http://stackoverflow.com/questions/15685181/how-to-get-the-sign-mantissa-and-exponent-of-a-floating-點號)你在找什麼? – SamVanDonut

回答

2

你不關心數字的符號,你需要指數僅,這樣你就可以得到安全地去掉標誌:

log10(abs(N)) 

abs回報N絕對值,它總是非負的,因此可用作log10的參數。

+0

我也需要標牌。例如-3或3是一個很大的差異 –

+0

@TomTom,我的答案是關於去除number_的符號,而不是指數。 – ForceBru