SICP 习题2.8 区间减法

SICP 习题 (2.8) 解题总结:区间的减法 SICP 习题 2.8 需要我们完成区间运算的减法,区间运算的加法书中已经有了,代码如下:(define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y)))) 以上代码很简单,就是计算区间的加法时将两个区间的起点相加,称为新区间 阅读详情
我的想法是区间减法是a区间的每一个数减去b区间的每一个数,这些相减的结果在一个区间上。
也就是x的下界-y的上界是最小的,x的上界-y的下界是最大的。其他所有结果都在这两个数之间。
(define (add-interval x y)
  (make-interval (+ (lower-bound x) (lower-bound y))
         (+ (upper-bound x) (upper-bound y))))

(define (mul-interval x y)
  (let ((p1 (* (lower-bound x) (lower-bound y)))
    (p2 (* (lower-bound x) (upper-bound y)))
    (p3 (* (upper-bound x) (lower-bound y)))
    (p4 (* (upper-bound x) (upper-bound y))))
    (make-interval (min p1 p2 p3 p4)
           (max p1 p2 p3 p4))))

(define (div-interval x y)
  (mul-interval x 
        (make-interval (/ 1.0 (lower-bound y))
                   (/ 1.0 (upper-bound y)))))

(define (sub-interval x y)
  (make-interval (- (lower-bound x) (upper-bound y))
         (- (upper-bound x) (lower-bound y))))

(define make-interval cons)
(define lower-bound car)
(define upper-bound cdr)

(define print-interval
  (lambda (z)
    (newline)
    (display (lower-bound z))
    (display " ~ ")
    (display (upper-bound z))))

(define a (make-interval 1 2))
(define b (make-interval 3 4))

(print-interval (add-interval a b))
(print-interval (mul-interval a b))
(print-interval (div-interval a b))
(print-interval (sub-interval a b))
Google 人机验证(reCaptcha)无法显示解决方案 Google 人机验证无法显示解决方案第一步 安装插件Chrome/Edge 电脑版Firefox 电脑版第二步 配置插件原理参考文章 前言:为了防止机器人攻击,国外很多网站都使用了 Google reCaptcha 验证码。reCaptcha 对于国外用户非常的友好,但是… 对于国内用户就不怎么友好了。究其原因,则是国内网络全线屏蔽 Google 服务,导致 reCaptcha 完全加载不出来。这样,国内玩家就无法在对应的网站进行下一步操作了。本方案可以解决 reCaptcha 无法加载的问题。 适用 阅读详情

相关推荐

西门子PLC实战:基于1200/1500的工业物联网MQTT通讯全解析

本文详细解析了如何在西门子S7-1200/1500系列PLC上实现工业物联网MQTT通讯。通过从硬件准备、网络配置到TIA Portal中MQTT_Client功能块的实战编程,手把手指导工程师打通车间数据桥梁,解决信息孤岛问题,实现PLC数据高效上云或设备间互联。

whisky的博客 1089

区间算术学习笔记

区间算数是一种计算方法,它可以更加准确地描述数值的范围,对于解决涉及不确定性和误差的问题非常有用。本篇博客将详细介绍区间算数的基本概念、运算规则以及应用场景,帮助读者更好地理解和应用区间算数。

m0_72410588的博客 3980

基于YOLOv8的多类别检测模型融合实战:从数据集重构到模型训练

本文详细介绍了如何将多个单一类别的YOLOv8检测模型融合为一个高效的多类别检测模型。通过重构数据集、利用预训练模型生成新标签,并重新训练,解决了多模型并行带来的速度慢、资源占用高和部署复杂等问题。实战流程涵盖数据准备、标签生成、模型训练与评估,旨在帮助开发者构建性能优异的YOLOv8多类别检测模型。

kmeans3miner的博客 227

sicp 习题2.7 && 2.8

题目:(define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y)))) 和的最小值应该是两个区间下界之和,和的最大值应该是两个区间上界之和 求出:   1.upper-bound 和

尘埃的博客 1155

VC Spyglass:Lint实战指南之TCL脚本自动化解析

本文详细介绍了如何利用TCL脚本实现VC Spyglass Lint检查的自动化流程。通过实战指南,从基础脚本编写到高级参数化技巧,帮助数字IC设计工程师摆脱手动操作,提升验证效率,并实现与CI/CD流程的集成。

h3i4j的博客 796

AF3 ProteinDataset类的_patch方法解读

AlphaFold3 protein_dataset模块 ProteinDataset 类  _patch 方法的主要目的是围绕锚点残基(anchor residues)裁剪蛋白质数据,提取一个局部补丁(patch)作为模型输入。

qq_27390023的博客 1146

SICP习题解答2.7-2.16

ex2.7-2.16 #lang racket ; exercise 2.7 (define (make-interval a b) (cons a b)) (define (upper-bound interval) (max (car interval) (cdr interval))) (define (lower-bound interval) (min (car interval

yaojiank的专栏 851

Eclipse 数据空间组件(EDC)项目介绍

在当今数字经济的背景下,数据成为了新的“石油”。但与石油不同的是,数据可以无限共享且再生。然而,如何在保持数据主权的前提下实现高效、安全的数据共享,成为了企业和组织面临的主要挑战。这时,**Eclipse 数据空间组件(Eclipse Dataspace Components, EDC)**应运而生,它为企业在多方参与的数据交换中提供了一个标准化、可扩展的解决方案。数据空间不仅是一个多组织间的数据共享协议,还是一套支撑这些协议运行的技术基础设施。

m0_74331272的博客 4597

关于SICP中练习2.82的实现

起初在看到这道练习的时候是一头雾水,感觉作者真的有点画蛇添足的味道。因为我在前面的文章中提到过,其实我感觉书中第125页上的那个apply-generic过程已经写得很完美了,能用最少的代码来实现过程的多态。所以,我感觉象134页那样的对过程apply-generic的扩展(这里说是扩展,其实是削弱更恰当,因为不定长参数被降低到了两个参数的特殊情况)还是分装进表格中相应的被调用的过程里为好(可能还...

Sphinxsky 515

爬取国家统计局最近10年年度数据

一、编码流程 1.目标网址:https://data.stats.gov.cn/easyquery.htm?cn=C01 2.编码思路: (1) 解析左侧指标树,实现4级标签定位 (难点:层层嵌套,下一级指标的xpath路径以上一级指标为基础;不是所有二级指标都含有三和四级指标,需要进行判断) (2) 使用selenium webdriver 点选指标,加载出右侧表格数据 (难点:当指标无法在全局页面显示时,需向下拖动滚动条) (3) 解析右侧数据,实现数据存储 3.使用模块: (1) selenium:解

weixin_39645690的博客 4556

逆向工程实战:如何一步步破解京东APP的sign签名算法(附Frida脚本)

本文详细解析了京东APP的sign签名算法逆向工程实战,通过Frida脚本动态分析Java层和Native层的多层签名机制,揭示商业应用的加密协议设计。文章提供了完整的逆向工程方法论与工具链,帮助开发者深入理解移动应用安全防护体系,提升安全防御能力。

weixin_28622215的博客 915

SICP 习题 (2.9)解题总结:区间的宽度和区间加减乘除的关系

SICP 习题 2.9 像是一个数学题,要我们证明区间的和与差的宽度是被加和被减的区间的宽度的函数,而对于乘法和除法来说不成立。书中所谓宽度就是区间起点和终点差的一半,以我看来更像是区间宽度的一半,不管怎么样,差不多是一个意思。如果你把区间看成是一个线段的话,所谓宽度应该就是起点和终点的差,如果一定要把宽度的一半记作是宽度也无所谓的。证明区间的和的宽度是被加区间的宽度的函数这一点是比较容易证明的,

keyboardOTA的专栏 2万+

新凯来嵌入式面经及参考答案

利用编译器预定义宏判断目标架构,如。

大模型大数据攻城狮的专栏 2063

SICP 习题2.9 区间宽度

可以看出add和sub之后的区间是之前两个区间的区间宽度之和,而mul和div是不确定的。(define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y))))(define (mul-interval x y) (

NM的专栏 599

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

sicp每日一题[2.8]

这道题目也比较简单,只要注意到区间之差的下界是被减区间的下界减去另一个区间的上界,上界是被减区间的上界减去另一个区间的下界即可。

再思的博客 353

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

SICP 习题2.10 区间除法 被除区间横跨0的问题

横跨0会导致除法的结果是错的,因为x0\frac{x}{0}是没有结果的(define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y))))(define (mul-interval x y) (let ((p1

NM的专栏 520

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

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

SICP 2.9 像是一个数学题,要我们证明区间的和与差的宽度是被加和被减的区间的宽度的函数,而对于乘法和除法来说不成立。书中所谓宽度就是区间起点和终点差的一半。以我看来更像是区间宽度的一半。无论怎么样。差点儿相同是一个意思。假设你把区间看成是一个线段的话,所谓宽度应该就是起点和终点的差。假设一定要把宽度的一半记作是宽度也无所谓的。证明区间的和的宽度是被加区间的宽度的函数这一点是比較easy...

weixin_34332905的博客 138

SICP 习题 (2.1.4)拓展练习——初论

我只讨论练习2.15和2.16,前面的较简单。 2.15和2.16不能孤立的看,首先我们想想这个所谓区间运算的实质是什么? 没错,集合 我们重新定义加法: \qquad对于集合AA,BB \qquad定义C=A+BC=A+B为一切x+yx+y构成的集合(其中x∈Ax \in A和y∈By \in B) 减法,乘法,除法类似 也容易定义C=f(A,B)C=f(A,B)为一切f(x,y)f

approximant的博客 350

SICP学习笔记(2.1.4)

                                    SICP学习笔记(2.1.4)                                              周银辉 1,练习2.7 要得到答案,需注意到文中的一段话“Alyssa假设有一种称为区间的抽象对象,这种对象有两个端点,一个上界一个下界”,很明显,一个区间是由上界和下界来定义的,正如我们说平面上一个...

weixin_34174105的博客 189

SICP 习题2.11 改写div-interval 分情况讨论

x正正正负负负y正正正负负负\begin{array}{c|c}x&y\\正正&正正\\正负&正负\\负负&负负\end{array}3*3总共有9种情况,分类讨论即可。div-interval的代码(define (div-interval x y) (let ((x1 (lower-bound x)) (y1 (upper-bound x)) (x2 (/ 1 (lower-

NM的专栏 510

SICP 2.7 ~ 2.12习题解答

(define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y))))(define (make-interval a b) (cons a b))(define (lower-bound x) (co...

weixin_30426957的博客 195

sicp每日一题[2.9]

这道题目没有任何难度,只要把原来的区间宽度和经过加减之后的区间宽度表示出来,它们的关系也就一目了然了。根据执行结果可以看出,加减之后的区间宽度等于原来两个区间宽度之和。

再思的博客 344

SICP习题2.9解答

证明:设求区间的宽度函数为h(x)先证区间的加法: 设任意两区间为(a, b) (c, d),那么(a, b) + (c, d) = ( min(a, b) + min(c, d),max(a, b) + max(c, d) )那么h((a, b) + (c, d)) = (max(a, b) + max(c, d) - min(a, b)- min(c, d) ) / 2...

weixin_30515513的博客 229

sicp 习题 2.6 ~ 2.10

2.6 [code="java"](define zero (lambda (f) (lambda (x) x))) (define (add-1 n) (lambda (f) (lambda (x) (f ((n f) x))))) ((zero 4) 3) (add-1 5 1)[/code] 2.7 [code="java"](define (add-interva...

zhangle 242
上一篇: SICP 习题2.6 丘奇计数
下一篇: SICP 习题2.7 实现区间的lower-bound 和 upper-bound
_NMfloat_
博客等级 码龄12年 7粉丝 315原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值