SICP: Structure and Interpretation of Computer Programs (24)

7 Name: #!/usr/bin/anonymous : 2008-04-26 14:20 ID:6H+vlMk0

(define (sqrt2 n d)
(sqrt2-help n d 1 0))

(define (sqrt2-help n d guess prevguess)
(if (< (diff guess prevguess) (* d prevguess))
guess
(sqrt2-help n d (improve-guess n guess) guess)))

(define (diff a b)
(abs (- a b)))

(define (improve-guess n guess)
(average guess (/ n guess)))

(define (average a b)
(/ (+ a b) 2))

10 Name: #!/usr/bin/anonymous : 2008-04-26 15:47 ID:6H+vlMk0

yeah, i guess. it's d for delta, but it really means that the new guess needs to be less than a dth of the previous one. dunno what to call that.

This thread has been closed. You cannot post in this thread any longer.