(begin(load "util.scm");ex 1.16 计算b的幂
    (define (_expt product b n maxn)(if (= n maxn) product(if (<= (* n n) maxn) (_expt (* product product) b (+ n n) maxn)(_expt (* product b) b (+ n 1) maxn))))(define (fast-expt b n)(if (<= n 0) 1(_expt b b 1 n)));ex 1.11
    (define (ex1-f n)(cond ((< n 3) n)(else(+ (ex1-f (- n 1)) (* 2 (ex1-f (- n 2))) (* 3 (ex1-f (- n 3)))))))            (define (expmod base exp m)(cond ((= exp 0) 1)((even? exp)(remainder (square (expmod base (/ exp 2) m))m))(else(remainder (* base (expmod base (- exp 1) m))m))))
;    (define (expmod base exp m)
;        (remainder (fast-expt base exp) m))
    (define (fermat-test n)(define (try-it a)(= (expmod a n n) a))(try-it (+ 1 (random (- n 1)))))(define (fast-prime? n times)(cond ((= times 0) true)((fermat-test n) (fast-prime? n (- times 1)))(else false)))
;    (define (sum term a next b)
;      (if (> a b)
;          0
;          (+ (term a)
;             (sum term (next a) next b))));ex 1.30
    (define (sum term a next b)(define (iter a result)(if (> a b)result(iter (next a) (+ (term a) result))))(iter a 0));ex 1.31
    (define (product term a next b)(define (iter a result)(if (> a b)result(iter (next a) (* (term a) result))))(iter a 1));ex 1.32
    (define (accumulate1 combiner null-value term a next b)(define (iter a result)(if (> a b)result(iter (next a) (combiner (term a) result))))(iter a null-value));ex 1.33
    (define (filtered-accumulate filter combiner null-value term a next b)(define (iter a result)(if (> a b)result(if (filter a)(iter (next a) (combiner (term a) result))(iter (next a) result))))(iter a null-value))        (define (inc n) (+ n 1))(define (cube x) (* x x x))(define (sum-cubes a b)(sum cube a inc b))(define (identity x) x)(define (sum-integers a b)(accumulate1 + 0 identity a inc b))(define (product-integers a b)(accumulate1 * 1 identity a inc b))(define (sum-integers-even a b)(filtered-accumulate even? + 0 identity a inc b))(define (product-integers-even a b)(filtered-accumulate even? * 1 identity a inc b))
;    (define (sum-integers a b)
;      (sum identity a inc b))
;    (define (product-integers a b)
;      (product identity a inc b))
)

转载于:https://www.cnblogs.com/sniperHW/archive/2013/05/22/3093818.html

sicp第一章部分习题解答相关推荐

  1. pdf 天线理论与技术 钟顺时_天线理论与技术第二版-钟顺时-第一章部分习题解答.pdf...

    天线理论与技术第二版-钟顺时-第一章部分习题解答 第一次作业 Matlab 绘制电基本振子方向图和E 面H 面 1 1.1-1 ̅ ( ) ̅ ̅ ∇ × = ∇ × [ ] = − [( )] ̅ ...

  2. 机器学习 周志华 第一章课后习题

    机器学习 周志华 第一章课后习题 1.1 1.2 1.3 1.4 1.5 1.1 在下面这张图片中若只包含编号为1和4的两个样例,试给出相应的版本空间. 书上实例: 1.表 1.1 对应的假设空间如下 ...

  3. linux课后作业答案第六章,操作系统 第六章作业习题解答

    第六章作业习题解答 3.某操作系统的磁盘文件空间共有500块,若用字长为32位的位示图管理盘空间,试问: (1)位示图需多少个字? (2)第i字第j位对应的块号是多少? (3)并给出申请/归还一块的工 ...

  4. 数据结构python吕云翔_《数据结构》吕云翔编著第1章绪论习题解答

    数据结构第一章绪论习题 一. [单选题] 1. ( A )是数据的基本单位. A.数据元素 B.数据对象 C.数据项 D.数据结构 2. ( C )是数据的不可分割的最小单位. A.数据元素 B.数据 ...

  5. 微课|玩转Python轻松过二级:第3章课后习题解答6

    适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. 第3章  详解Python序列结构 课后习题解答227-236题 课后习题解答237-247题 书购买链接 ...

  6. 微课|玩转Python轻松过二级:第3章课后习题解答5

    适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. 第3章  详解Python序列结构 课后习题解答180-200题 课后习题解答201-214题 课后习题解答 ...

  7. 微课|玩转Python轻松过二级:第3章课后习题解答4

    2019年3月8日-10日公众号送书活动:中小学生Python课应该学什么 =============== 适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. ...

  8. 微课|玩转Python轻松过二级:第3章课后习题解答3

    适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. 第3章  详解Python序列结构 课后习题解答103-115 课后习题解答116-129 课后习题解答13 ...

  9. 微课|玩转Python轻松过二级:第3章课后习题解答2

    适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. 第3章  详解Python序列结构 课后习题解答46-58 课后习题解答59-82 课后习题解答83-102 ...

最新文章

  1. 分布式发布订阅消息系统Kafka单实例测试
  2. PHP登录密码的生成与验证
  3. zabbix 监控 Esxi
  4. java 定义xml_java中web.xml定义详解
  5. sqlite3修改表内容python_Python sqlite3数据库模块使用攻略
  6. 解决 RaspberryPi 树莓派 NTP服务异常 无法自动同步时间
  7. MyBatis自动生成步骤
  8. javascript 绘制uml_Javascript 设计模式之面向对象与 UML 类图
  9. 牛客网刷题记录(3)组合逻辑
  10. flask-uploads文件上传
  11. 80004005错误代码_Win7系统提示0X80004005错误代码怎样解决 Win7系统错误代码0x80004005的解决办法...
  12. 了解CI/CD流水线
  13. 股权融资的A、B、C、D轮
  14. JavaScript 学习笔记 - 12 JavaScript 应用示例
  15. 强化学习-把元学习(Meta Learning)一点一点讲给你听
  16. 根据PLL相噪测试曲线计算jitter的Matlab程序
  17. 职教云自动选题、答题并自动修改答题已用时间 脚本
  18. java中的char占几个字节
  19. 切换RequiredFieldValidator和RegularExpressionValidator提示信息的控件
  20. 云鲸扫拖一体机器人说明书_让做家务变的更简单:云鲸智能扫拖一体机器人测评...

热门文章

  1. PKU A Simple Problem with Integers 3468
  2. FlexChart: 针对AJAX的Flash绘图应用
  3. 哈佛大学 CS50,全美最受欢迎的计算机课程!
  4. 初学 C 语言没有项目练手?这 20 个小项目拿走不谢~
  5. php mysql实现每日签到积分_php+mysql+jquery实现日历签到功能
  6. mysql7种join连接_mysql 重新整理——七种连接join连接[六]
  7. 自定义JWT认证过滤器
  8. MySQL高级 trace工具
  9. 基于JWT的API权限校验:需求分析
  10. java builder.parse_JAVA之DocumentBuilder生成解析XML