読者です 読者をやめる 読者になる 読者になる

yy_taroのとりとめのない落書き

メインフレームの導入・設計・構築ができるぐらいの知識があったりする。

SICP始めました 10

SICP十日目

 

昨日飛ばした問題を解いてみた。

 

問題1.35

 fixed-pointを使うだけ、変換 x→ 1+ 1/x

 (fixed-point (lambda (x) (+ 1 (/ 1 x))) 1.0)

 

問題1.36

 平均緩和を使わない場合:35ステップ

  ( fixed-point ( lambda ( x ) ( / ( log 1000 ) ( log x ) ) ) 2.0 )

 平均緩和を使った場合:10ステップ

 ( fixed-point ( lambda ( x ) ( average x ( / ( log 1000 ) ( log x ) ) ) ) 2.0)

 

問題1.37

a.

( define ( cont-frac1 n d k )
 ( define ( iter i )
  (if ( = i k )
   ( / ( n i ) ( d i ) ) 
   (/ ( n i ) (+ ( d i ) ( iter ( + i 1 ) ) ) ) ) )
 (iter 1 ) )

 

 b.

( define ( cont-frac2 n d k )
 ( define ( iter i result )
  ( if ( = i k )
   result
   ( iter ( + i 1 ) ( / ( n i ) ( + ( d i ) result ) ) ) ) )
 ( iter 1 1 ) )

 

問題1.38

Diを以下の通り

 ( lambda ( x)  

  ( if ( = ( remaider i 3 ) 2)

   (- i ( / (- i 2 ) 3) ) )

   1 ) )

 

問題1.39

xを以下の通り

 (lambda ( x )

  ( if ( = x 1) 

   x

   ( - square x ) ) )

 

Kを以下の通り

 (lambda ( x ) ( - ( * 2 i ) 1 ) )

 

 

計算機プログラムの構造と解釈[第2版]

計算機プログラムの構造と解釈[第2版]