log(10^k) 的近似值

Mar*_*ark 0 java algorithm math

我试图找到 log(10^k) 的结果,其中 k 是像 10000 这样的大数字。例如:

BigDecimal first = BigDecimal.TEN.pow(10000);
double result = Math.log(first.doubleValue());

Run Code Online (Sandbox Code Playgroud)

然而,“结果”变成 Infinity ,但是在 wolphram 上将其近似为 23025.85.Any 建议如何找到结果?结果小数点后前两位的数字对我来说就足够了。

And*_*ner 8

使用以下事实

log(10^k) = k*log(10)
Run Code Online (Sandbox Code Playgroud)

所以:

System.out.println(10000 * Math.log(10));
Run Code Online (Sandbox Code Playgroud)

印刷:

23025.850929940458
Run Code Online (Sandbox Code Playgroud)