diff options
Diffstat (limited to 'coding-exercises/1/35.rkt')
| -rw-r--r-- | coding-exercises/1/35.rkt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/coding-exercises/1/35.rkt b/coding-exercises/1/35.rkt new file mode 100644 index 0000000..2f597c7 --- /dev/null +++ b/coding-exercises/1/35.rkt @@ -0,0 +1,20 @@ +#lang racket +(require sicp) + +(define (fixed-point f first-guess) + (define (close-enough? v1 v2) + (< (abs (- v1 v2)) 0.0001)) + (define (try guess) + (let ((next (f guess))) + (if (close-enough? guess next) + next + (try next)))) + (try first-guess)) + +(define (golden-ratio) + (fixed-point + (lambda (x) (+ 1 (/ 1 x))) + 1.0)) + +(golden-ratio) +(/ (log 10) (log 2)) |
