;; SICP(Structure and Interpretation of Computer Programs)
;; 我已经买了整整一年可是真正去看也没有多少
;; scheme and lisp 自从我知道以后我就一直想真正地去学一下
;; 一,这是一种function(函数式)的语言,和我们以前学的那些过程式和面向对象
;; 的不同。有时学着用另一种思想去想东西应该是不错的。
;; 二,这是一种与人工智能相关的语言,呵,也就是一种好玩的东西。
;; 三,一直想重新捡回我的数学,而学她应该可以让我捡回数学的兴趣,还有各种算法
;;
;; 前几天在cygwin下编译mit/gnu scheme's src总是出错,自己手动修改了一些代码还是
;; 过不了,就算是最新的src也一样。不过也没有办法,谁叫我平时工作都在windows下呢
;; 不然完全可以用喜欢的ubuntu linux进行工作学习的
;; 有空再继续试试
;;
;; xpirate
;; 2005-09-29
;; 练习1.2
(/ (+ 5 4 (- 2 (- 3 (+ 6 (/ 4 5)))))
(* 3 (- 6 2) (- 2 7)))
;; 练习1.3
(define (sum-max x y z)
(if (> x y)
(if (> x z) ; x>y
(if (> y z) ; x>z
(+ x y) ; y>z => x>y>z
(+ x z)) ; z>y => x>z>y
(+ z x)) ; z>x => z>x>y
(if (> y z) ; y>x
(if (> x z) ; y>z
(+ y x) ; x>z => y>x>z
(+ y z)) ; z>x => y>z>x
(+ z y))) ; z>y => z>y>x
;; 1.5 (还搞不明白)
;; 在测试sum-max时,无意中发现max可以接收n个参数(n>0),像:
;; (max 1)
;; (max 1 2 3 4 5 6)
;; 可是,怎么才能在我自己的函数里也能处理n个参数(n>0)呢?
;; 相信有一天我会解开这个问题
;; 现在我也只能是用猜的,可能是用递归或者迭代来处理的吧
;; 不过也只是猜,因为,现在的我也觉得不怎么可能
;; why?! he, I don't know!
;;
;; xpirate
;; 2005-09-30 |