练习 1.20
(define (gcd a b)
(if (= b 0)
a
(gcd b (remainder a b))))
正则序
(gcd 206 40)
--> (if (= 40 0) 206 (gcd 40 (r 206 40)))
--> (gcd
40
(r 206 40))
--> (if (= (r 206 40) 0) 40 (gcd (r 206 40) (r 40 (r 206 40))))
--> (gcd
(r 206 40)
(r 40 (r 206 40)))
--> (gcd
(r 40 (r 206 40))
(r (r 206 40) (r 40 (r 206 40))))
--> (gcd
(r (r 206 40) (r 40 (r 206 40)))
(r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40)))))
--> (gcd (r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40))))
(r (r (r 206 40) (r 40 (r 206 40))) (r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40))))))
--> 12 + (1 + 2 + 4 + 7) = 26
应用序
(gcd 206 40)
--> (if (= 40 0) 206 (gcd 40 (r 206 40)))
--> (gcd 40 (r 206 40))
--> (gcd 40 6)
--> (if (= 6 0) 40 (gcd 6 (r 40 6)))
--> (gcd 6 (r 40 6))
--> (gcd 6 4)
--> (gcd 4 2)
--> (gcd 2 0)
--> 1 + 1 + 1 + 1 = 4
分享到:
相关推荐
sicp in python 中文版 sicp in python 中文版 sicp in python 中文版 !!!download>>>https://github.com/wizardforcel/sicp-py-zh
- **1.2.5 最大公约数**: 讲解欧几里得算法的应用。 - **1.2.6 示例:素性测试**: 介绍一种高效判断素数的方法。 - **1.3 使用高阶过程形成抽象** - **1.3.1 作为参数的过程**: 如何将过程作为其他过程的参数。 ...
SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版
总的来说,SICP 2.2.4节的图形语言不仅是学习Scheme或Racket编程的一个重要部分,更是对计算思维和编程艺术的一次深入探索。通过实践和理解这些概念,你将能更好地理解和创造计算世界中的视觉表现形式。
在Python中实现SICP的挑战在于,Python的语法和Lisp有很大区别,但这也为学习者提供了思考不同编程范式的机会。例如,Python的面向对象特性可以用来模拟SICP中的一些过程抽象,而Lisp中的动态作用域在Python中需要...
《SICP笔记和练习》是一份详尽的资源,主要涵盖了由MIT教授们编写的经典计算机科学教材《Structure and Interpretation of Computer Programs》(简称SICP)的学习笔记和练习解答。这份资料以HTML格式呈现,便于在线...
通过学习SICP,读者可以掌握如何用基本的构建块来构造复杂的计算系统,并理解这些系统的行为。书中的习题设计巧妙,旨在引导读者深入思考编程语言的内部机制以及如何设计和实现自己的编程环境。 《SICP解题集》中...
SICP不仅在MIT内部被广泛用作教学材料,而且在全球范围内也享有极高的声誉,被视为学习计算机科学理论基础的必读之作。 #### 二、书籍内容概览 SICP的内容涵盖了程序设计的基本概念、过程抽象、数据抽象、模块化...
SICP-Python版本
Python SICP epub版本,很适合学习抽象的思想,用Python版本比lisp更实用
SICP 使用的scheme解释器 以前叫DrScheme
本资料集包含了对SICP第一章习题的解答,旨在帮助学习者巩固基础,深化对函数式编程的理解。 首先,让我们关注一下习题解答中的几个关键部分: 1. **1.6.ss**: 这部分可能涉及到函数定义、递归和过程抽象。SICP的...
《计算机程序的构造和解释》(SICP)是一本极具影响力的计算机科学教材,由Harold Abelson和Gerald Jay Sussman所著,MIT出版社出版。这本书以其深入探讨编程概念、程序设计方法以及计算机系统的工作原理而闻名。1-3...
- **最大公约数 (Greatest Common Divisors)**:介绍了一种实用的数学算法及其编程实现。 - **素性测试 (Example: Testing for Primality)**:讨论了如何检测一个数是否为素数。 - **使用高阶过程建立抽象 ...
《SICP》全称是《Structure and Interpretation of Computer Programs》,中文译为《计算机程序的构造和解释》。这是一本经典的计算机科学教材,由Harvard大学的 Harold Abelson 和 Gerald Jay Sussman 教授撰写,...
本书名为《a_book_sicp_py》,是一本以Python语言为基础介绍设计模式和计算机科学基础的书籍。根据描述和部分内容,可以提炼出以下知识点: 1. 编程语言的重要性:在计算机科学的宽泛领域中,编程语言扮演着至关...
通过学习SICP,学生将能够理解如何设计、分析和实现复杂的程序系统,培养出强大的抽象思维能力。 课程内容涵盖了以下几个关键知识点: 1. **基本编程概念**:包括变量、数据结构(如列表、树)、控制结构(条件...
标题中的"PyPI 官网下载 | sicp-0.0.1b102.dev4.tar.gz"指的是从Python的官方包索引(Python Package Index,简称PyPI)上下载的一个名为"sicp"的软件包的版本号为0.0.1b102.dev4的压缩文件,其格式是tar.gz。...
《学习SICP:探索Racket编程的艺术》 SICP,全称为《Structure and Interpretation of Computer Programs》(计算机程序的结构与解释),是一本经典的计算机科学教材,由Harold Abelson和Gerald Jay Sussman合著,...