今天重新拿起了SICP,准备继续之前被The Little Schemer打断的计划。
今天重新实现了下第一章的习题16,还重新实现了那个测试工具。
习题代码:
(define square
(lambda (n)
(* n n)))
(define fast-expt
(lambda (a n ex)
(cond
((zero? a) 0)
((zero? n) ex)
((even? n) (fast-expt (square a) (/ n 2) ex))
(else (fast-expt a (- n 1) (* ex a))))))
测试工具代码(和之前比,变化是如果测试失败会打出实际结果):
(define testN
(lambda (func test-cases)
(cond
((null? test-cases) '())
(else (map (lambda (it)
(let ((v (apply func (car it)))) (if (eq? v (car (cdr it))) #t v))) test-cases)))))
测试用例:
(testN fast-expt '(
((0 0 1) 0)
((2 0 1) 1)
((2 1 1) 2)
((1 2 1) 1)
((2 3 1) 8)
((2 5 1) 32)
((2 10 1) 1024)
)
)
测试结果:
'(#t #t #t #t #t #t #t)
分享到:
相关推荐
sicp in python 中文版 sicp in python 中文版 sicp in python 中文版 !!!download>>>https://github.com/wizardforcel/sicp-py-zh
SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版SICP中文第二版
用于控制实现Philips SICP协议的Philips显示的API客户端。 使用跨平台的.NET Core构建。 创建该项目是为了通过Philips SICP协议管理Philips 10BDL3051T显示器。 该协议定义了大约50个不同的命令,但是仅实现了10...
SICP-Python版本
SICP 使用的scheme解释器 以前叫DrScheme
#SICP 包含 SICP 以不同语言实现的示例和解决方案。 ##Course 聊天室如果您来自。 您可能还需要查看群聊。
sicp 2.2.4节图形语言的racket程序包,配置路径,C:\Users\Administrator\AppData\Roaming\Racket
Python SICP epub版本,很适合学习抽象的思想,用Python版本比lisp更实用
SICP 解题集
SICP CHINESE ENGLISH THE SECOND EDITION SICP CHINESE ENGLISH THE SECOND EDITION
SICP 习题答案 计算机程序的构造和解释 1-3章 习题答案
sicp in python 中文版 sicp in python 中文版 sicp in python 中文版 download : https://github.com/wizardforcel/sicp-py-zh
SICP习题解答,主要第一章的内容习题答案
资源来自pypi官网。 资源全名:sicp-0.0.1b102.dev4.tar.gz
sicp-in-python(中文版+英文版)PDF 背景. SICP 全称Structure and Interpretation of Computer Programs,翻译过来叫《计算机程序的构造和解释》使用python
资源名称:sicp 和 操作系统:精髓与设计原理第七版资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
经典书籍《计算机程序的构造与解释》,UCB热门课程CS61a的官方教材
#SICP SICP解决方案
sicp 2ed高清pdf,以及相对应的mit课程资料及习题答案打包,中文版的视频在这里http://i.youku.com/i/UNTcxODk3ODQw/videos?spm=a2hzp.8244740.0.0