level 5
如(cond (条件) ((语句A) (语句B)))(语句A) (语句B)是怎么样连接起来的
2012年08月28日 08点08分
1
level 3
(begin (expression1) (expression2) ...)
2013年07月15日 06点07分
5
level 3
scheme的cond表达式基本形式是
(cond (<p1> <e1>)
(<p2> <e2>)
...
(<pn> <en>))
其中(<p> <e>)中的<p>是谓词,就是值为真或假的表达式;<e>是表达式的序列,就是可以是许多个语句,不用什么连起来。
比如我想打印一个a<x<b内的奇数,就可以这样写:
(define (print-odd a b)
(cond ((and (= (remainder (+ a 1) 2) 1) (< (+ a 1) b)) (display (+ a 1)) (newline) (print-odd (+ a 1) b))
((< a b) (print-odd (+ a 1) b))
(else (display "Done!"))))
再调用(print-odd 0 10)就会打印
1
3
5
7
9
Done!
2018年07月25日 17点07分
9