(concat [0 1] (interleave s1 s2 s2))))
;; we concat [0 1] because nth sequences are indexed from 0
+(defn den-seq [k]
+ (if (= (rem k 3) 2)
+ (* (/ (+ k 1) 3) 2) ;; ((k+1)/3)*2
+ 1))
+
;; approximating e
(defn e-approximation [len]
- (let [l (* 3 (int (/ len 3.0)))
- den (gen-sequence l)]
- (+ 2.0
- (cont-frac (fn [k] 1.0)
- (fn [k] (nth den k))
- l))))
+ (+ 2.0
+ (cont-frac (fn [k] 1.0)
+ (fn [k] (den-seq k))
+ len)))
(comment
user> (e-approximation 10)
2.7182818284590455
user> (e-approximation 100)
2.7182818284590455
-)
\ No newline at end of file
+)
+