Learning/SICP/exercise_1_39.janet
2025-05-29 22:00:25 +02:00

19 lines
376 B
Plaintext

(defn cont-frac [N D k]
(defn iter [prev i]
(if (>= i k)
prev
(cond
(= i 1) (iter (/ (N (- k i)) (D (- k i))) (+ i 1))
(iter (/ (N (- k i)) (- (D (- k i)) prev)) (+ i 1)))))
(iter 0 1))
(defn tan-cf [x k]
(defn odd [i] (- (* i 2) 1))
(defn N [i]
(cond
(= i 1) x
(* x x)))
(cont-frac N odd k))
(print (tan-cf 1 100))