【SICP练习】3 练习1.7
来源:互联网 发布:战地1942 mac 下载 编辑:程序博客网 时间:2024/05/14 18:18
练习1.7
这道题回应了第15页所说的good-enough?并不是一个很好的检测方法。
我们首先来按照题目要求用4组最大或最小的数来检测原文中的good-enough?
(sqrt-iter 1.0 0.00000081) 0.0009
;Value: 0.3125863108711088
(sqrt-iter 1.0 0.000000014) 0.00012
;Value: 0.3125015344984974
通过以上两个例子相信已经很明显了,至于最大的数字我就不再测试了,因为我刚刚测试了一个十六位数的然后卡死了。
以下是我写的改进后的good-enough?
(define (good-enough? guess x)
(good-enough-1?guess (improve guess x)))
(define (good-enough-1? guess1 guess2)
(<(abs (/ (- guess2 guess1) guess1)) 0.00001))
我们依旧来通过测试说明没问题,以下是测试结果。
(sqrt-iter 1.0 0.00000016)
;Value: 4.000016244484425e-4
(sqrt-iter 1.0 152399025)
;Value: 12345.000014803034
看得出来和结果已经非常相似了。当然,good-enough?肯定还有非常多的检测方法。
6 0
- 【SICP练习】3 练习1.7
- SICP 练习1.7
- 【SICP练习】2 练习1.6
- 【SICP练习】4 练习1.8
- 【SICP练习】5 练习1.9
- 【SICP练习】6 练习1.10
- 【SICP练习】7 练习1.11
- 【SICP练习】8 练习1.12
- 【SICP练习】9 练习1.15
- 【SICP练习】10 练习1.16
- 【SICP练习】11 练习1.17
- 【SICP练习】12 练习1.18
- 【SICP练习】13 练习1.19
- 【SICP练习】14 练习1.20
- 【SICP练习】15 练习1.21
- 【SICP练习】16 练习1.22
- 【SICP练习】17 练习1.23
- 【SICP练习】18 练习1.24
- SQLserver 删除数据所有表和存储过程和约束
- Android TTS文字转语音开发
- 寒假之作—HDU—土地的侵蚀问题
- SELinux
- IOS开发-文件管理(二)
- 【SICP练习】3 练习1.7
- WindowsNT中,GDI资源的管理
- 学习PHP的过程记录(6)
- MyEclipse中部署安卓开发环境
- android读取短信获取验证码功能实现
- 安卓学习必备开发板-Rayeager PX2
- 第二十一篇 设计模式--中介模式
- tomcat 性能检测
- B. Fox And Two Dots