码迷,mamicode.com
首页 > 其他好文 > 详细

SICP 习题 (1.44)解题总结

时间:2014-08-24 19:26:42      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:style   ar   代码   size   sp   on   ef   c   简单   

SICP 习题1.44 要求我们实现一个平滑函数的过程,和以往一样,如果你太在意平滑函数的数学定义你就输了。简单的办法就是直奔平滑函数的要求,其实就是给我们一个不清楚细节的函数f,要求我们返回一个过程专门计算(f (+ x dx)) , (f x) , (f (- x dx))的平均值。其中dx是事先定义好的一个很小的数,比如0.001。


这就比较简单了,直接实现如下:

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


如果希望对一个过程进行多次平滑处理,可以结合之前的repeat过程多次调用smooth过程,代码如下:

(define (n-smooth f n)
  ((repeat smooth n) f))


SICP 习题 (1.44)解题总结

标签:style   ar   代码   size   sp   on   ef   c   简单   

原文地址:http://blog.csdn.net/keyboardota/article/details/34808145

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!