在Scala中找到数字的对数

Ada*_*dam 10 scala

你如何在Scala中找到x的基数y对数?我搜索了scala.math库,但我找不到方法.它似乎只有log10(x)和ln(x).

小智 17

这是一个数学问题:)

log<base y>(x) == log10(x)/log10(y) == ln(x)/ln(y)
Run Code Online (Sandbox Code Playgroud)

来自网络的随机链接解释了这一点:

http://www.purplemath.com/modules/logrules5.htm


Jor*_*rge 5

为方便起见,您可以使用 lambda 函数,例如,

scala> var log2 = (x: Double) => log10(x)/log10(2.0)
log2: Double => Double = <function1>

scala> log2(2)
res0: Double = 1.0
Run Code Online (Sandbox Code Playgroud)