15 lines
372 B
Scheme
15 lines
372 B
Scheme
#lang sicp
|
|
|
|
(define (cont-frac n d k)
|
|
(define (cf-acc n d k i)
|
|
(if (= k i)
|
|
(/ (n i) (d i))
|
|
(/ (n i) (+ (d i) (cf-acc n d k (+ i 1))))))
|
|
(cf-acc n d k 0))
|
|
|
|
(define (tan-cf x k)
|
|
(cont-frac (lambda (i) (if (= i 0)
|
|
x
|
|
(- (* x x))))
|
|
(lambda (i) (+ 1.0 (* 2.0 i)))
|
|
k))
|