标签:style blog ar sp div 2014 问题 on log
SICP 习题 2.10 要求我们处理区间除法运算中除于零的问题。
题中讲到一个专业程序员Ben Bitdiddle看了Alyssa的工作后提出了除于零的问题,大家留意一下这个叫Ben的人,后面会不断出现这个人,只要是这个人提到的事情一般是对的,他的角色定位是个计算机牛人,不过是办公室经常能看到的那种牛人,后面还有更牛的。
对于区间运算的除于零的问题,处理起来也比较简单,只需要判断除数是不是为零,除数为零就报错。对于一个区间来讲,所谓为零就是这个区间横跨0,再直接一点讲就是起点是负数,终点是正数。
理解了以后写代码就很简单了:
(define (div-interval x y) (if (< (* (upper-bound y) (lower-bound y)) 0) (error "Div 0:" y)) (mul-interval x (make-interval (/ 1.0 (upper-bound y)) (/ 1.0 (lower-bound y)))))
好,解题结束。
SICP 习题 (2.10)解题总结: 区间除法中除于零的问题
标签:style blog ar sp div 2014 问题 on log
原文地址:http://blog.csdn.net/keyboardota/article/details/39439837