24 lines
541 B
Plaintext
24 lines
541 B
Plaintext
(defn cont-frac [N D k]
|
|
(defn iter [i]
|
|
(cond
|
|
(= k i) (/ (N i) (D i))
|
|
(/ (N i) (+ (D i) (iter (+ i 1))))))
|
|
(iter 1))
|
|
|
|
(defn cont-frac-iter [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))
|
|
|
|
(print (cont-frac (fn [i] 1.0)
|
|
(fn [i] 1.0)
|
|
12))
|
|
|
|
(print (cont-frac-iter (fn [i] 1.0)
|
|
(fn [i] 1.0)
|
|
12))
|