【SICP练习】140 练习3.71

练习3-71

原文

代码

(define (Ramanujan s)
         (define (stream-cadr s) (stream-car (stream-cdr s)))
         (define (stream-cddr s) (stream-cdr (stream-cdr s)))
         (let ((scar (stream-car s))
                   (scadr (stream-cadr s)))
                (if (= (sum-triple scar) (sum-triple scadr))
                        (cons-stream (list (sum-triple scar) scar scadr)
                                                 (Ramanujan (stream-cddr s)))
                        (Ramanujan (stream-cdr s)))))
(define (triple x) (* x x x))
(define (sum-triple x) (+ (triple (car x)) (triple (cadr x))))
(define Ramanujan-numbers
        (Ramanujan (weighted-pairs integers integers sum-triple)))

所以接下来的5个数是:

(4104 (2 16) (9 15))

(13832 (2 24) (18 20))

(20683 (10 27) (19 24))

(32832 (4 32) (18 30))

(39312 (2 34) (15 33))

时间: 2024-11-10 10:38:17

【SICP练习】140 练习3.71的相关文章

node js 常用模块

前100个依赖库里,underscore是属于语言基础类,express是服务器框架,有5.6个测试框架.以及5.6个递归遍历目录树的工具类.3个左右的命令行解析工具类,3个主流数据库的链接client库,2个ws库,多个js/CSS前端处理工具链,3-4个promise库,多个模版库,多个jquery/cavans/dom模拟器以及解析器,一个静态分析器,两个验证库 总得来说,node.js的前100个流行模块应该就可以代表node.js解决问题的问题域 ===================

scala实战之spark用户在线时长和登录次数统计实例

接触spark后就开始学习scala语言了,因为有一点python和java的基础学习起来还行,今天在这里把我工作中应用scala编程统计分析用户行为日志的实例和大家分析一下,我这里主要讲一下用户的在线时长统计和登录次数统计算法实现过程. 第一步 编程环境:首先你得有spark安装包 你可以先不用本地安装spark,但是可以通过import spark-assembly-1.6.2-hadoop2.6.0.jar包来完成程序调试 另外需要scala的运行环境,我用的版本:scala-sdk-2.

C程序设计语言(K&R) 笔记1

当作复习... (1)将华氏度 换算成 摄氏度,公式: ℃=(5/9)(?°F-32) #include <stdio.h> int transformTemprature(int F){ //`C=(5/9)(?`F-32) return (int)(5 * (F-32) / 9); } int main(){ int lower = 0; int upper = 300; int step = 20; for(int f=lower; f<=upper; f+=step){ prin

一次由于网卡流量跑满引起的服务器丢包总结

最近收到线上一台DB服务器ping丢包,丢包率一直在30%左右.通过Zabbix监控查看了服务器CPU,内存都很正常,网卡流量也不高,基本在100M左右. 首先确认一下服务器硬件是否正常,由于没有收到硬件报警.登录服务器通过HP管理工具在此确认了硬件信息都正常(硬盘,缓存卡,内存等).  第二步在排查一下系统问题,通过top,ps等命令也没有发现什么异常,基本上排除系统问题.  第三步查看了一下该服务器上联监控机端口流量,也都很正常,由于收到只有这一台服务器报警,也排除了上联交换机故障问题. 

NodeJS常用模块

前100个依赖库里,underscore是属于语言基础类,express是服务器框架,有5.6个测试框架.以及5.6个递归遍历目录树的工具类.3个左右的命令行解析工具类,3个主流数据库的链接client库,2个ws库,多个js/CSS前端处理工具链,3-4个promise库,多个模版库,多个jquery/cavans/dom模拟器以及解析器,一个静态分析器,两个验证库 总得来说,node.js的前100个流行模块应该就可以代表node.js解决问题的问题域 ===================

linux安装mpich

为了做课设,不得不安装个mpich,找了好久方法.下面简单介绍下安装方法 yum安装,这是比较简单的安装方式注意:先要配置好yum的网络源安装epel-release扩展源,我试了下本地的貌似没安装成功 [[email protected] yum.repos.d]# yum -y install mpich-3.2-devel.x86_64 mpich-3.2-devel.x86_64 mpich-3.2-doc.noarch 安装好之后是找不到命令的,需要手动配置环境变量 [[email p

【SICP练习】71 练习2.42

 练习2.42 这道题曾经在C#中写过,但是写出来的代码却没有Lisp中的朴素.用了一大堆的数组和for循环.但是在这里,用car.cdr来构造就行了. 我们按书中给出的步骤来一步一步求解这个问题.首先是棋局,就按书上的示意图,从上往下的来排皇后的位置.诸如此时书中皇后的位置为:'(6 3 1 7 5 8 2 4). 然后就是过程adjoin-position.rest-of-queens是在前k-1列放置k-1个皇后的一种方式,new-row是在第k列放置所考虑的编号.因此这一过程定义为:

DT大数据梦工厂 第71讲

王家林亲授 大数据开发语言<Scala深入浅出实战经典>(1-71讲全部视频.代码.PPT)下载 ,总共有140讲Scala视频!百度云:http://panbaidu.com/s/1jGjFpWy腾讯微云:http://url.cn/TnGbdC360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e271讲本节王老师讲了scala的Panel和layout,界面布局.其主要应用BoxPanel这个类来容纳各种各样的组件,就好像网页中的div.我们既可以放b

国嵌内核驱动进阶班-7-1(Ioctl设备控制)--- 测试代码

驱动内容: 1 #include <linux/module.h> 2 #include <linux/types.h> 3 #include <linux/fs.h> 4 #include <linux/errno.h> 5 #include <linux/mm.h> 6 #include <linux/sched.h> 7 #include <linux/init.h> 8 #include <linux/cde