练习1.9
对于过程
(define (+ a b)
(if (= a 0)
b
(inc (+ (dec a) b))))
计算(+ 4 5)时的替换过程为
-->(+ 4 5)
-->(if (= 4 0) 5 (inc (+ (dec 4) 5)))
-->(inc (+ 3 5))
-->(inc (if (= 3 0) 5 (inc (+ (dec 3) 5))))
-->(inc (inc (+ 2 5)))
-->(inc (inc (if (= 2 0) 5 (inc (+ (dec 2) 5)))))
-->(inc (inc (inc (+ 1 5))))
-->(inc (inc (inc (if (= 1 0) 5 (inc (+ (dec 1) 5))))))
-->(inc (inc (inc (inc (+ 0 5)))))
-->(inc (inc (inc (inc (if (= 0 0) 5 (inc (+ (dec 0) 5)))))))
-->(inc (inc (inc (inc 5))))
-->(inc (inc (inc 6)))
-->(inc (inc 7))
-->(inc 8)
-->9
为线性递归;
对于过程
(define (+ a b)
(if (= a 0)
b
(+ (dec a) (inc b))))
计算(+ 4 5)时的替换过程为
-->(+ 4 5)
-->(if (= 4 0) 5 (+ (dec 4) (inc 5)))
-->(+ 3 6)
-->(if (= 3 0) 6 (+ (dec 3) (inc 6)))
-->(+ 2 7)
-->(if (= 2 0) 7 (+ (dec 2) (inc 7)))
-->(+ 1 8)
-->(if (= 1 0) 8 (+ (dec 1) (inc 8)))
-->(+ 0 9)
-->(if (= 0 0) 9 (+ (dec 0) (inc 9)))
-->9
为线性迭代.
练习1.10
(A 1 10)-->(A 0 (A 1 9))
-->(* 2 (A 1 9))
-->(* 2 (A 0 (A 1 8)))
-->(* 2 (* 2 (A 1 7)))
-->......
-->2^10
(A 2 4) -->(A 1 (A 2 3))
-->(A 1 (A 1 (A 2 2)))
-->(A 1 (A 1 (A 1 (A 1 (A 2 1)))))
-->(A 1 (A 1 (A 1 (A 1 2))))
-->(A 1 (A 1 (A 1 2^2)))
-->(A 1 (A 1 2^4))
-->(A 1 2^8)
-->2^16
(A 3 3) -->(A 2 (A 3 2))
-->(A 2 (A 2 (A 3 1)))
-->(A 2 (A 2 2))
-->(A 2 2^2)
-->2^16
(A 0 n) -->2n
(A 1 n) -->2^n
(A 2 n) -->2^(2^n)
分享到:
相关推荐
sicp_notes SICP笔记和练习 资源 笔记 使用第一版,最高为ex 1.24。 从ex 1.31开始切换到第二版。
sicp in python 中文版 sicp in python 中文版 sicp in python 中文版 !!!download>>>https://github.com/wizardforcel/sicp-py-zh
SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版
1-2-1 ::线性递归和迭代 1-2-2 ::树递归 1-2-3 ::增长顺序 1-2-4 ::求幂 1-2-5 ::最大公约数 1-2-6 ::示例:测试素数 1-3-1 ::过程作为参数 1-3-2 ::使用Lambda构造程序 1-3-3 ::程序作为一般方法 1-3-4 :...
包含 SICP 每个部分的注释和答案。 请参考那些正在学习SICP的人。 笔记 如果你想在 gauch 中使用随机函数 (use math.mt-random) (define m (make <mersenne> :seed (sys-time))) (mt-random-integer m 1000) ...
SICP-Python版本
Python SICP epub版本,很适合学习抽象的思想,用Python版本比lisp更实用
第 1 章- 表达式、命名和环境、评估组合、复合过程、替换模型、应用顺序评估、正常顺序评估、条件表达式和谓词、数值分析、平方根、立方根、黑盒抽象、递归、迭代、线性递归、树递归、生长阶数、求幂、最大公约数、...
SICP 使用的scheme解释器 以前叫DrScheme
Learn_sicp 学习sicp的一些代码
sicp 2.2.4节图形语言的racket程序包,配置路径,C:\Users\Administrator\AppData\Roaming\Racket
SICP 习题答案 计算机程序的构造和解释 1-3章 习题答案
SICP 解题集
超声高速铣削和高速铣削高体分SiCp/Al MMCs的粗糙度研究,向道辉,岳广喜,结合正交分析和单因素分析对高体分SiCp/MMCs在超声高速和高速铣削两种实验条件下的粗糙度进行分析,研究铣削速度、进给量和切削深度
资源名称:sicp 和 操作系统:精髓与设计原理第七版资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
SICP CHINESE ENGLISH THE SECOND EDITION SICP CHINESE ENGLISH THE SECOND EDITION
sicp in python 中文版 sicp in python 中文版 sicp in python 中文版 download : https://github.com/wizardforcel/sicp-py-zh
SICP习题解答,主要第一章的内容习题答案
sicp-pdf, 采用Texinfo和 LaTeX 源的kinetis PDF 器件 直接链接:sicp.pdf这是 Harold Abelson的PDF版本,Gerald Jay和朱莉 Sussman 。 它是对非官方Texinfo格式的进一步开发,它最初是从MIT的 HTML版本derived的。...