码迷,mamicode.com
首页 > 其他好文 > 详细

【SICP练习】32 练习1.38

时间:2015-02-17 21:09:38      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:sicp



练习1.38

我最喜欢做数学上的观察题了,这里也有一个Di,其依次为12114116118……我最先看到的是除了一开始的2个之外,每三个数字的规律是前面是两个1,后面是个递增的偶数。于是我们便可轻而易举的写出这个函数了。

(define (d i)

   (if (= (remainder (- i 2) 3) 0)

      (* (+ (/ (- i 2) 3) 1) 2)

      1))

n一直都是1,于是我们定义为:

(define (n i) 1)

由于题中是e-2的连分式,所以在最后的结果上应该再加上2.0

(define (e k)

    (define (n i) 1)

    (define (d i)

        (if (= (remainder (- i 2) 3) 0)

           (* (+ (/ (- i 2) 3) 1) 2)

           1))

     (+ (cont-frac n d k) 2.0))

下面我们来测试一下:

(e 2015)

;Value: 2.718281828459045

【SICP练习】32 练习1.38

标签:sicp

原文地址:http://blog.csdn.net/nomasp/article/details/43867401

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!