• SICP 练习 (2.9)解决摘要:宽度和区间运算的关系间隔


    SICP 2.9 像是一个数学题,要我们证明区间的和与差的宽度是被加和被减的区间的宽度的函数,而对于乘法和除法来说不成立。


    书中所谓宽度就是区间起点和终点差的一半。以我看来更像是区间宽度的一半。无论怎么样。差点儿相同是一个意思。

    假设你把区间看成是一个线段的话,所谓宽度应该就是起点和终点的差。假设一定要把宽度的一半记作是宽度也无所谓的。


    证明区间的和的宽度是被加区间的宽度的函数这一点是比較easy证明的。看以下的证明步骤:


    假设有区间1是(a1 b1),还有区间2是(a2 b2),


    那么区间1的宽度为

    w1 = (b1 - a1) /2


    区间2的宽度为:

    w2 = (b2 - a2)/2


    而两区间和的宽度为:

    w3 = ((b1+b2) - (a1 + a2)) / 2      

    w3 = (b1 + b2 - a1 -a2)/2

    w3 = (b1-a1) / 2  + (b2-a2)/2

    w3 = w1 + w2


    相同的,减法也能够用相似的方法证明。


    对于乘法和除法。由于涉及到取最大值和最小值的操作,我一时间没想到什么办法能够证明他们不像加减法那样有函数关系。


    只是题目也没要求我们证明。仅仅是要我们举个样例说明对于乘法和除法不是这样就能够了。想想也算是反证法吧,找一个不成立的样例说明。


    要找的样例就是乘除法的区间宽度是一样的,可是乘除后结果的宽度不同。


    找样例的话就好找喽,随便找一个:


    (1   2) *   (5   6) =  (5   12)

    这里乘数的宽度都是0.5, 而结果的宽度是3.5.


    在以下的计算里:

    (1 2)     (100 101)  = (100 202)

    乘数的宽度也是0.5。只是结果的宽度就大了去了。

    。。




    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    无废话设计模式(7)结构型模式--装饰模式
    无废话设计模式(6) 结构型模式--适配器模式
    无废话设计模式(5)结构型模式--桥接模式
    无废话设计模式(4)原型模式
    Java进阶--Map集合
    Java进阶--List接口
    Java进阶--集合泛型综合应用案例(斗地主)
    Java进阶--泛型
    Java进阶--Iterator迭代器
    Java进阶--Collection集合
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/4821775.html
Copyright © 2020-2023  润新知