【SICP练习】141 练习3.72
来源:互联网 发布:qq的网络状态是否准确 编辑:程序博客网 时间:2024/05/22 12:15
练习3-72
原文
Exercise 3.72. In a similar way to exercise 3.71 generate a stream of all numbers that can be written as the sum of two squares in three different ways (showing how they can be so written).
代码
(define (square x) (* x x)) (define (sum-square x) (+ (square (car x)) (square (cadr x)))) (define (squaresn s) (define (stream-cadr s) (stream-car (stream-cdr s))) (define (stream-caddr s) (stream-cadr (stream-cdr s))) (let ((scar (stream-car s)) (scadr (stream-cadr s)) (scaddr (stream-caddr s))) (if (= (sum-square scar) (sum-square scadr) (sum-square scaddr)) (cons-stream (list (sum-square scar) scar scadr scaddr) (squaresn (stream-cdr (stream-cdr (stream-cdr s))))) (squaresn (stream-cdr s))))) (define square-numbers (squaresn (weighted-pairs integers integers sum-square)))
感谢您的访问,希望对您有所帮助。 欢迎大家关注或收藏、评论或点赞。
为使本文得到斧正和提问,转载请注明出处:
http://blog.csdn.net/nomasp
5 0
- 【SICP练习】141 练习3.72
- 【SICP练习】2 练习1.6
- 【SICP练习】3 练习1.7
- 【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
- 代理设计模式--Proxy
- Struts2中的全局结果集
- ubuntu system setting 功能不全解決方案
- Windows下快捷键组合备忘录(持续更新)
- Java集合源码剖析
- 【SICP练习】141 练习3.72
- 冒泡、插入、归并、堆排序、快速排序的Java实现代码
- 浅谈J2EE十三个规范
- 字符串-06. IP地址转换(20)
- 密码发生器——第三届蓝桥杯省赛C语言A组第8题
- ubuntu下使用adb
- sqoop1.X 的使用
- atitit.基于虚拟机的启动器设计 --java 启动器 java生成exe
- #pragma unroll