5

我知道球拍的log功能,它计算一个数字的自然对数。我试图找到提高到任意基数的数字的对数。换句话说,而不是这样:

> (log 9)
2.1972245773362196

我想做类似的事情:

> (logarithm 3 9)
2

是否有任何人知道 Racket 的内置功能或 PLaneT 的模块中可用的功能,我可以像这样使用?

4

2 回答 2

15

使用数学:log k n = ln n / ln k:

(/ (log 9) (log 3))
于 2013-02-07T01:18:33.740 回答
4

Racket 6.9.0.1 为任意碱基添加了第二个参数。log k n 现在可以写成(log n k).

根据文档,这相当于(/ (log n) (log k)),但可能更快。

在文档中记录条目。

于 2017-12-19T04:17:56.890 回答