28 lines
818 B
Scheme
28 lines
818 B
Scheme
#lang sicp
|
|
(define tolerance 0.00001)
|
|
(define (fixed-point f guess)
|
|
(define new-guess (f guess))
|
|
(cond ((< (abs (- guess new-guess)) tolerance)
|
|
(display new-guess)
|
|
(newline)
|
|
(f guess))
|
|
(else
|
|
(display new-guess)
|
|
(newline)
|
|
(fixed-point f new-guess))))
|
|
|
|
; 34 steps without damping
|
|
(define solution (fixed-point
|
|
(lambda (x) (/ (log 1000)
|
|
(log x)))
|
|
2.0))
|
|
(newline)
|
|
(newline)
|
|
(newline)
|
|
; 9 steps with average damping
|
|
(define solution-damped
|
|
(fixed-point (lambda (x) (/ (+ x
|
|
(/ (log 1000)
|
|
(log x)))
|
|
2.0))
|
|
2.0))
|