SICP 练习1.7

来源:互联网 发布:mac运行速度变慢 编辑:程序博客网 时间:2024/05/22 12:23

这个是改进good-enough?函数,容易想到,guess (improve guess x) 分别是上一次迭代和下一次迭代的结果,那么就可以测量这个变化来改进good-enough?函数

(define (sqrt-iter guess x)  (if (good-enough? guess (improve guess x))    guess    (sqrt-iter (improve guess x) x)))(define (improve guess x)  (average guess (/ x guess)))(define (average x y)  (/ (+ x y) 2))(define (good-enough? guess x)  (< (/ (abs (- guess x)) guess) 0.00001))(define (square x) (* x x))(define (sqrt x)  (sqrt-iter 1.0 x))(sqrt 9)(sqrt (+ 100 37))(sqrt (+ (sqrt 2) (sqrt 3)))(square (sqrt 1000))
0 0