sicp习题试解 (1.44)

类别:编程语言 点击:0 评论:0 推荐:

; ======================================================================
;
; Structure and Interpretation of Computer Programs
; (trial answer to excercises)
;
; 计算机程序的构造和解释(习题试解)
;
; created: code17 03/06/05
; modified:
; (保持内容完整不变前提下,可以任意转载)
; ======================================================================


;; SICP No.1.44

(define dx 0.001)

(define (smooth f) (lambda (x) (/ (+ (f x) (f (+ x dx)) (f (- x dx))) 3)))

(define (n-smooth n f) ((repeated smooth n) f))


;; Test-it;;
> (require (lib "math.ss"))
> (sin (/ pi 4))
0.7071067811865475
> ((smooth sin) (/ pi 4))
0.7071065454843067
> ((n-smooth 10 sin) (/ pi 4))
0.7071044241676754

本文地址:http://com.8s8s.com/it/it23017.htm