-1
(define length1
(lambda (lat)
(cond
((null? lat) 0)
(else (+ 1 (length1 (cdr lat)))))))
例如:顯示該號碼(或其他任何東西),當呼叫長度1在cond
使用LISP輸出的東西,而在COND
(define length1
(lambda (lat)
(cond
((null? lat) 0)
(else (+ 1 (length1 (cdr lat)))))))
例如:顯示該號碼(或其他任何東西),當呼叫長度1在cond
使用LISP輸出的東西,而在COND
爲Common Lisp中你可以使用(progn (...) (...) ...)
組合在一起多個表達式爲一體。
方案中的等價物是(begin (...) (...) ...)
。
這樣:
(define length1
(lambda (lat)
(cond
((null? lat) 0)
(else (begin (display "hello world") (+ 1 (length1 (cdr lat))))))))
或者也許你想:
(define length1
(lambda (lat)
(cond
((null? lat) 0)
(else (let ((or-anything-else (+ 1 (length1 (cdr lat)))))
(display or-anything-else)
or-anything-else)))
而這大約耗盡了我的耐心。
如何顯示當前計數編號0 1 2 3 4 ...'? – kran 2012-07-24 01:32:22
是什麼變數? – 2012-07-24 01:34:26
(+ 1(length1(cdr lat)))或(length1(cdr lat))?在每一個遞歸 – kran 2012-07-24 01:37:19