【发布时间】:2011-11-04 20:11:58
【问题描述】:
我想创建一个函数来验证列表的数字是否介于 1 和 10 之间(包括 1 和 10)。如果他们这样做,我想将其添加到我创建的新列表中。但是,如果它们不在范围内,我决定将它们转换为适合而不是丢弃它们(通过添加(1+(随机 10))。
(defun fit (lst)
"(lst) check every number if it fits the range (1-10)"
(do ((fit lst (cdr fit))
(range nil))
((null fit) (reverse range))
(if (and (>= fit 1) (=< fit 10))
(seft ((cons fit range))))
(or (< fit 1) (> fit 10))
(cons (+ fit (1+ (random 10))) range)))
代码从 (defun fit...) 开始。但是,它不起作用,而且由于我的知识有限,我无法进行任何类型的更改。任何帮助或见解将不胜感激。 谢谢你。
【问题讨论】:
标签: lisp common-lisp