問題3.75 – SICP(計算機プログラムの構造と解釈)その165

問題3.75

Louis の変更した手続きでは平滑化された値(avpt)を次の last-value として渡している。
さらに境界のチェックは平均値同士から算出しないとだめらしい。
したがって修正した make-zero-crossings 手続きは以下のようになる。

(define (make-zero-crossings input-stream last-value last-avpt)
  (let ((avpt (/ (+ (stream-car input-stream) last-value) 2)))
       (cons-stream (sign-change-detector avpt last-avpt)
                    (make-zero-crossings (stream-cdr input-stream)
                                         (stream-car input-stream) avpt))))
計算機プログラムの構造と解釈
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
«
»