This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/29

素人くさいSICP読書会に参加してきました。

今回も、前回に引き続いてサイボウズ・ラボ様にて開催されました。素晴らしい環境を利用させてくださいましてありがとうございます。

参加者数は、だいたい20名前後でした。前回同様、演習問題を黙々と解いていくという形式で進められました。今回の範囲は、演習問題 1.37〜1.39でした。連分数に関するところです。連分数を使って、πや自然対数の底の導出や、正接関数の構成などを行いました。

ということで、今回使ったコードを置いておきます。

; 5/24 sicp#14
;
(define (cont-frac n d k)
  (define (frac i)
    (if (= i k)
        (/ (n i) (d i))
        (/ (n i)
           (+ (d i) (frac (inc i))))))
  (frac 1))
(define (dec n) (- n 1))
(define (cont-frac-i n d k)
  (define (frac i result)
    (if (= i 0)
        result
        (frac (dec i)
              (/ (n i) (+ (d i) result)))))
  (frac k 0))
(define (e-38 k)
  (/ 1 (cont-frac-i
        (lambda (i) 1.0)
        (lambda (i)
          *1 1) 2 1)
             (+ (floor (/ i 3)) 1)))
        k)))
(define (tan-cf x k)
  (define (n i) (if (= i 1) x (- *2)))
  (define (d i) (dec *3))
  (cont-frac-i n d k))

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/29

  1. 1 (if (= (remainder i 3

  2. 2 x x

  3. 3 2 i

posted by Png genki on Thu 25 May 2006 at 10:09

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry17
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ