如何定义除 e 以外的底数的对数?

问题描述 投票:0回答:2

我正在尝试在 Scheme 中定义 log。例如如果

(log (exp 1)) ;=> 1.0

那我怎么写log5(25)呢?

math scheme racket logarithm
2个回答
4
投票

方案中的

log
函数产生数字的自然对数(以e为底)。为了计算不同底数的对数,您只需将数字的 loge 除以所需底数的 loge

在 Scheme 中定义一个 log5 函数:

(define (log5 x) (/ (log x) (log 5)))

然后

(log5 25)
会产生
2.0


0
投票

使用

log
过程的第二个参数(参见 Revised7 Report on the Algorithmic Language Scheme, p. 79):

日志过程现在接受指定对数底数的第二个参数。

例如

> (log 8 2)
3.0
© www.soinside.com 2019 - 2024. All rights reserved.