【发布时间】:2016-04-10 13:12:43
【问题描述】:
1 (setq R (cons 1 20))
2 (setq L (cons 5 '(a b)))
3 (setq U (cons 10 'h))
4
5
6 (defun insertcell(R L)
7 (setq x (list r l))
8 (cond ((< (car R) (car L))
9 (setq x (list R L))
10 (print x)
11 (print (car(car(cdr x))))
12 ((> (car R) (car L)
13 (insertcell R (car(cdr x)))))
14 ))
15
16
17 (print r)
18 (print l)
19 (insertcell r l)
20 (insertcell u r)
21
Q1) 我不知道如何返回函数的返回值/
Q2) 关于上位代码, 例如,我有一个列表,K= ((1.20)(5 A B)) 我想添加一个(3.H)。 所以,K= ((1.20)(3.H)(5 A B))
查看我的代码, *** - SYSTEM::%EXPAND-FORM: (> (CAR R) (CAR L)) 应该是一个 lambda 表达式。
这是什么? ,我在stackflow上搜索,但没有解决错误。
*** Lisp 很困难。 我研究了 C、C++ 汇编和 ruby,我可以编写这些语言。但是,因为 Lisp,我很困惑。
【问题讨论】:
-
如果没有适当的缩进和代码格式,您在任何编程语言中都不会走得太远。您可能想要格式化和缩进您的代码。总是。 Lisp 的好处:一个好的编辑器可以为你缩进代码。
-
您的代码应该做什么也完全不清楚。 “插入细胞”?
3.H是什么?1.20是一个数字。但是3.H???
标签: lisp