Exercise 1.8.  Newton's method for cube roots is based on the fact that if y is an approximation to
the cube root of x, then a better approximation is given by the value
(x/y2+2y)/3
Use this formula to implement a cube-root procedure analogous to the square-root procedure. (In
section 1.3.4 we will see how to implement Newton's method in general as an abstraction of these
square-root and cube-root procedures.)

(define (cube x)
  (* x x x))
(define (square x)
  (* x x ))
(define (result x y)
 (/ (+ (/ x (square y)) (* 2 y)) 3))
(define (improve  x guess)
  (result   x guess))
(define (good-enough?  x guess)
  (< (abs (- (* guess guess guess ) x))0.001))
(define (sqrt-iter x  guess)
  (if (good-enough?  x guess)
      guess
      (sqrt-iter x (improve  x guess)
                 )))
posted on 2009-03-06 16:22 lzj520 阅读(264) 评论(0)  编辑  收藏 所属分类: 个人学习日记sicp

只有注册用户登录后才能发表评论。


网站导航: