2013-11-24 78 views
0

我寫這條線在我的代碼:的Java 1.7 - 與Math.log功能

szo.P_POS = Math.log(((double) (szo.talalatok_szama_POS_blokkban)/(double)(szo.osszes_talalat_szama))); 

變量szo.talalatok_szama_POS_blokkbanszo.osszes_talalat_szama是SZO內部類

當我運行它,我得到不同的int成員

System.out.println(Math.log((double)0.6)); 
:從實際值

值示例

此行評估,以-0.5108256237659907

和實際值是:-0,22184874961635636749123320202039(Windows計算器)

+2

這些變量有奇怪的名字.. – Maroun

+0

我是匈牙利:) –

回答

1

什麼基地對數是每個版本使用? Java的Math.log以通用數學術語使用base e或ln

+0

我不明白 –

+0

LN X,登錄E X不等於? –

+0

他們爲什麼沒有調用'ln()'方法? –

3

好像你想要一個基地10對數:

Math.log10(x); 
+0

我需要基數e對數,因爲我實現了一個樸素貝葉斯算法,並且我乘以非常小的數字 –

+0

然後,你在做什麼就可以了:log_e(0.6)是-0.51 ... – Christian

+0

好的,謝謝你的回答 –