【问题标题】:SICP 1.2.4 typo in fast-exp?快速 exp 中的 SICP 1.2.4 拼写错误?
【发布时间】:2018-09-11 05:54:47
【问题描述】:

我正在通过 SICP,我不确定这是书中的错误还是我遗漏了什么。

对于计算fast-exp作者给出了以下规则:

b^n = (b^(b/2))^2 如果 n 是偶数

b^n = b * b^(n - 1) 如果 n 是奇数

但是,当他们展示偶数 n 的实现时,我们有:

((even? n) (square (fast-expt b (/ n 2))))

我认为这是正确的。

我相信

b^n = (b^(b/2))^2 if n is even

应该改为

b^n = (b^(n/2))^2 if n is even.

我很难相信这么老的书竟然有这样的错误。我还试图在网上找到有关此问题的任何讨论,但失败了。不知道这里发生了什么。提前致谢。

link to the mentioned chapter

【问题讨论】:

    标签: scheme sicp


    【解决方案1】:

    你是对的,这是一个错字 - 如果 n 是偶数,则公式应该是 (b^(n/2))^2。但已在errata 中更正。

    【讨论】:

    • 太棒了!非常感谢!
    猜你喜欢
    • 2016-12-04
    • 1970-01-01
    • 2011-07-15
    • 2011-07-21
    • 2018-06-15
    • 2011-06-07
    • 2020-07-07
    • 2022-12-07
    • 1970-01-01
    相关资源
    最近更新 更多