開発環境
- OS X Lion - Apple(OS)
- Emacs、BBEdit - Bare Bones Software, Inc. (Text Editor)
- プログラミング言語: MIT/GNU Scheme
計算機プログラムの構造と解釈(Gerald Jay Sussman(原著)、Julie Sussman(原著)、Harold Abelson(原著)、和田 英一(翻訳)、ピアソンエデュケーション、原書: Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)(SICP))の3(標準部品化力, オブジェクトおよび状態)、3.5(ストリーム)、3.53(ストリームパラダイムの開発)、信号としてのストリーム、問題 3.75、問題 3.76を解いてみる。
その他参考書籍
問題 3.75
コード(BBEdit)
sample.scm
(define (make-zero-crossings input-stream last-value last-avpt) (let ((value (stream-car input-stream))) (let ((avpt (/ (+ value last-value) 2))) (cons-stream (sign-change-detector avpt last-avpt) (make-zero-crossings (stream-cdr input-stream) value avpt)))))
問題 3.76
コード(BBEdit)
sample.scm
(define (smooth stream) (let ((a (stream-car stream)) (b (stream-car (stream-cdr stream)))) (let ((avpt (/ (+ a b) 2))) (cons-stream avpt (smooth (stream-cdr stream)))))) (define zero-crossings (stream-map sign-change-detector (smooth sense-data) (smooth cons-stream 0 sense-data)))
0 コメント:
コメントを投稿