SICP 练习2.12 make-interval-percent

SICP 习题 (2.13)解题总结:区间计算误差 SICP 习题 2.13 又像是一道数学证明题,和编程关系不大,不过这不能阻挡我们去完成它。题目要求我们证明,当误差百分比很小的时候,可以使用一个简单的公式,根据被乘区间的误差去计算乘积的误差。同时,为了简化问题,题目允许我们只计算所有数为正的情况,因为涉及到负数时,乘积的正负变化比较多样,不容易统一处理。我看到题目后最直接的反应不是去证明它,而是通过程序去找到这个简单的公式,典型的程序员心理。要 阅读详情
(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 (make-center-width c w)
  (make-interval (- c w) (+ c w)))

(define (center i)
  (/ (+ (lower-bound i) (upper-bound i)) 2))

(define (width i)
  (/ (- (upper-bound i) (lower-bound i)) 2))

(define (make-center-percent c p)
  (make-interval (- c (/ (* c p) 100.0)) (+ c (/ (* c p) 100.0))))

(define (percent i)
  (* (/ (width i) (center i)) 100.0))

(define d (make-center-percent 100 10))

(print-interval d)
(newline)
(display (center d))
(newline)
(display (width d))
(newline)
(display (percent d))
Postgresql中函数详解看一篇就够了——常用函数以及使用方法 一篇文章来了解postgresql中常用的函数及其使用方法 阅读详情

相关推荐

告别手动复制粘贴!用Python脚本+pywinauto实现PC微信消息自动发送(附完整源码)

本文详细介绍了如何利用Python和pywinauto实现PC微信消息的自动化发送,告别繁琐的手动操作。从环境搭建、UI控件定位到构建健壮的发送流程,再到高级功能扩展和项目打包部署,全面解析了自动化办公的实现方案,显著提升工作效率。

weixin_30315723的博客 583

PostgreSQL函数——时间函数

时间类型 timestamp:时间戳 格式为1997-01-01 00:00:00,January 8 04:05:06 1999 PST date:日期 有1997-01-01,19970101,1/1/1997,Jan-1-1997等多种格式 time:时间 有12:00:00,120000,12:00,8:00 AM,8:00 PM等格式 interval:时间间隔 格式为 1 year 2 months 3 days 4 hours 5 minutes 6 seconds 缩写 含义

漓涂 1万+

基于任务的后勤智能体:三段构建与演进设计探究

这是系统智能化的核心难点。例如,对于一个“加强连级滩头阵地防御”子任务,系统会根据防御时长、预期敌军攻击强度、地形等因素,计算出所需的弹药(不同弹种的具体数量)、构筑工事的器材、人员的给养和饮水量、以及医疗救护的药品和血包数量。首先进行分词、词性标注等基础处理,然后利用在军事语料库上训练的命名实体识别(NER)模型,提取出关键实体,如任务类型(“夺控作战”)、作战对象(“Y岛”)、时间约束(“D日H时”、“24小时内”)、成功标准(“建立稳固滩头阵地”)、保障重点(“弹药充足”、“及时救治”)等。

weixin_49042442的博客 1088

SICP 练习 (2.12)解决摘要 :不同的实现时间

SICP 2.12 要求我们定义一个构造函数make-center-percent,它接收两个參数,分别代表中心点和一个误差百分比。我们须要通过这个构造函数产生一个区间。此外还须要定义一个选择函数percent,用来获取指定区间的误差百分比。还有就是须要实现一个center函数用于获取区间的中间点。这里的关键就是要我们明确一个复合数据类型可能会有不同的表现形式,比方这里的区间能够用起点和终点...

weixin_34409703的博客 193

双层优化入门(2)—基于yalmip的双层优化求解(附matlab代码)

​上一篇博客介绍了双层优化的基本原理和使用KKT条件求解双层优化的方法,这篇博客将介绍使用yalmip的双层优化问题的求解方法。 1.KKT函数 通过调用yalmip工具箱中的KKT函数,可以直接求出优化问题的KKT条件,省去自己手动写的步骤。 2.solvebilevel函数 solvebilevel是yalmip工具箱内置的求解双层优化问题的函数。也就是通过这个函数,不需要咱手动写KKT条件,也不需要使用KKT函数,直接把上、下层优化的目标函数、约束条件往里面一放,就能求出结果。 ​

配电网和matlab的博客 1万+

Ubuntu22.04下安装LDAP

在Ubuntu22.04的时候可以使用apt的方式来安装,在安装LDAP的web 服务器的时候可以考虑选择 LDAP 帐户管理器 (LAM)。因为 PHPLDAPadmin 安装时需要 php 的环境依赖,相对来说安装麻烦。此外在 PHPLDAPadmin 中创建组织和用户时与平常的语法有很大不同,对新手来说不友好。

dl_11的博客 3944

SICP 习题 (2.12)解题总结 :区间的不同实现方式

SICP 习题 2.12 要求我们定义一个构造函数make-center-percent,它接收两个参数,分别代表中心点和一个误差百分比。我们需要通过这个构造函数产生一个区间。此外还需要定义一个选择函数percent,用来获取指定区间的误差百分比。还有就是需要实现一个center函数用于获取区间的中间点。这里的关键就是要我们明白一个复合数据类型可能会有不同的表现形式,比如这里的区间可以用起点和终点

keyboardOTA的专栏 6万+

【2026年华为暑期实习-非AI方向(通软&嵌软&测试&算法&数据科学)- 7月15日-第二题- 手机多载波冲突选择】(题目+思路+Java&C++&Python解析+在线测试)

摘要 本文提出了一种解决手机基站载波选择问题的回溯算法。给定N个载波,每个载波具有带宽和所属频段,要求选择最多K个载波,满足:1) 不选择同一频段的多个载波;2) 不选择冲突频段的载波;3) 总带宽最大化。算法通过预处理冲突关系,使用位掩码优化冲突检查,按编号顺序回溯枚举所有可能组合。当找到更大带宽或相同带宽但字典序更小的组合时更新答案。该方法在N≤25和K≤8的约束下高效可行,并通过样例验证了正确性。输出为最大总带宽和对应的最优载波编号序列。

m0_73659489的博客 71

pg 时间操作方法

extract:(参数 from 时间 可以是:current_date )make_interval(year=>,hour=>):按照格式创建时间间隔。current_timestamp:时间戳,更细。make_date(年,月,日):创建时间。current_date :当前时间。date ‘当前日期’ :指定日期。age(日期1,日期2):间隔时间。本质就是个宏定义,只是动态的。now():系统时间。

weixin_46098612的博客 1235

Codex 团队如何用自己的产品构建产品——整个 Spec 只有 10 个要点

OpenAI Codex团队采用极简产品开发模式,整个产品规格仅10个要点。团队50-100人长期仅1名PM,设计师代码量已超过工程师。产品负责人Alexander Embiricos透露,团队几乎不写详细文档,仅在需要协调时写简短要点。OpenAI采用独特规划哲学:只做8周内短期或长期方向性规划,拒绝中期路线图。2025年GPT-5.2 Codex发布后,模型能力突破催生了桌面应用开发。团队强调"让离代码最近的人做决策",PM角色转变为"填空者",设计师与工程师界限

346

数据治理——详解元数据、资源目录、主数据、数据元、元数据管理、主数据管理【附全文阅读】

摘要:数据中心建设的核心是元数据管理,即"描述数据的数据",包含内容、质量、所有者等关键信息。元数据在数据仓库中记录数据源、转换规则等,是管理基础;主数据管理则确保核心业务数据的准确一致。二者共同构建高效的数据资源目录,为数据服务提供支撑。(99字)

cdfunlove的博客 98

区间的不同实现方式

SICP 习题 2.12 要求我们定义一个构造函数make-center-percent,它接收两个参数,分别代表中心点和一个误差百分比。我们需要通过这个构造函数产生一个区间。此外还需要定义一个选择函数percent,用来获取指定区间的误差百分比。还有就是需要实现一个center函数用于获取区间的中间点。 这里的关键就是要我们明白一个复合数据类型可能会有不同的表现形式,比如这里的

xp22ny9s的专栏 510

微信小程序 - 最新详细实现跳转打开第三方网站方法流程及示例代码,在小程序内直接打开H5页面或微信公众号文章后台业务域名配置及下载校验文件上传服务器,嵌入外部网站跳转第三方h5网页(详细配置及代码)

微信小程序,打开第三方网站,放校验文件,怎么配置业务域名,后台配置,怎么打开外部没有关联的网站,小程序直接打开公众号文章,指定页面,跳转第三方url,跳转到外部网站,小程序跳转到任意外部网页,网站链接,跳转到其他网页(外部链接),小程序嵌入外部h5链接,校验文件怎么放到对方服务器上,要跳转到网站没权限放过去,校验文件验证域名,把校验文件放到对面网站,别人的服务器也打不开没权限怎么放呢,勾选不校验合法域名,txt,打不开别人的网页怎么办,真机调试打不开,无法跳转,有什么其他办法不放校验文件吗,别人不可能同意,

🏆 前端领域优质创作者 1万+

Greenplum常用sql语句

经常需要计算时间的差值,时间相加。SQL标准中 interval ‘1’ dayPostgresSQL中 interval ‘1 day’

flying roc 1910

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

postgresql-常用日期函数

PostgreSQL 提供了以下日期和时间运算的算术运算符。获取当前系统时间-- 当前系统时间一周后的日期。

Java_Fly1的博客 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

postgresql timestamp timestamptz 使用注意事项

原创,转载请注明出处! postgresql日期时间类型分为timestamp [ (p) ] [ without time zone ]和timestamp [ (p) ] with time zone,它们的区别在于一个无时区,另一有时区,存储大小均为8字节. 同时也要注意time [ (p) ] [ without time zone ]和time [ (p) ] with time zon

kmblack1的专栏 3万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

postgresql的时间数据处理

postgresql的时间数据处理postgresql的时间数据类型postgresql的时间数据类型与oracle有较大的区别,在理解和使用的时候需要下一番功夫 下表是postgresql官网上9.6版本的时间数据类型列表 Name Storage Size Description timestamp [ (p) ] [ without time zone ] 8 bytes

sunbocong的博客 7141

Pandas: TypeError: unorderable types: str() < float()

错误描述: TypeError: unorderable types: str() < float() 问题描述: 在进行数据分析时,想要使用resample方法进行定时采样,代码如下,但是运行时报了这样的错误“TypeError: unorderable types: str() < float()”。 score_by_time = data['score'].resample('H').mean() #可以看出2019-02-06 04:00:00评论平均分最高 s..

sl01224318的博客 1404

Python:unorderable types: str() > int()

Python:unorderable types: str() > int()标签:pythonby 小威威1.问题描述#!/usr/bin/env python3 name = input('please enter your name: ') print('hello,', name) a = input('请输入a的值') if a > 10 : print(a) else :

linwh8的博客 2万+

postgresql时间相关函数

时间与字符串转换 to_char to_date, to_timestamp 时间的计算 日期 时间戳 time interval 时间相关函数 age current_xxx,localxxx isfinite justify_xxx extract,date_part date_trunc 跟事务相关的时间戳 clock_timestamp, timeofday

rudy gao 4706

SICP 习题 (2.11)解题总结:区间乘法的优化

SICP 习题 2.11又出现Ben这个人了,如曾经说到的,仅仅要是Ben说的一般都是对的。来看看Ben说什么。他说:“通过监測区间的端点,有可能将mul-interval分解为9中情况,每种情况中所须要的乘法都不超过两次”。所以这个叫Ben的人建议Allysa重写mul-interval过程。究竟是啥意思呢。我们先来看看曾经的mul-interval过程:(define (mul-inter...

weixin_34072637的博客 465

MySql时间处理及interval函数运用

MySql时间操作 1.interval的说明 1.1、当函数使用时,即interval(),为比较函数,如:interval(10,1,3,5,7); 结果4; 原理:10为被比较数,后面1,3,5,7为比较数,将后面四个依次与10比较,看后面数字组有多少个少于10,则返回其个数。前提是后面数字组为从小到大排列,否则返回结果0。 1.2、当关键词使用时,表示为设置时间间隔,常用在date_add...

weixin_44641729的博客 2万+

postgresql 时间/日期函数和操作符

表9.30展示了可用于处理日期/时间值的函数,其细节在随后的小节中描述。表9.29演示了基本算术操作符 (+、*等)的行为。 而与格式化相关的函数。 所有下文描述的接受time或timestamp输入的函数和操作符实际上都有两种变体: 一种接收time with time zone或timestamp with time zone, 另外一种接受time without time zone或...

zxw986的专栏 2256

sicp 习题 2.12 ~ 2.13

2.12 [code="java"] (define (add-interval x y) (make-interval (+ (lower-bound x) (lower-bound y)) (+ (upper-bound x) (upper-bound y)))) (define (sub-interval x y) (add-inte...

zhangle 233

TypeError: unorderable types: str() > int()

#! /usr/bin/env python # -*- coding: utf-8 -*-def absolute(x): if x>0: return x else: return -xprint('Please enter a num:') num = input() print(absolute(num)) 运行以上代码,报错信息如下: Tr

郑斌的博客 6622
上一篇: SICP 习题2.11 改写div-interval 分情况讨论
下一篇: SICP 练习2.13 乘积区间的误差
_NMfloat_
博客等级 码龄12年 7粉丝 315原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值