我必须删除列表中的第3项并返回其余的我觉得我正在前往它的路上,但是我收到了一个错误。我该如何完成这项工作?
(define main
(lambda (ls)(cons(car ls)
(cddr ls)))
抱歉,我不知道如何将代码放入其他人为球拍做的事情中,所以它只是像这种格式一样。但我真的需要帮助。我得到的错误是一个arteri块,说我需要2个参数。
答案 0 :(得分:0)
你可以在程序的主体中尝试这个,假设列表中至少三个元素:
(cons (first ls) ; take 1st element
(cons (second ls) ; together with 2nd element
(rest (rest (rest ls))))) ; grab the rest starting from 4th
以上内容适用于Racket。但如果您更喜欢使用更多标准程序:
(cons (car ls) ; take 1st element
(cons (cadr ls) ; together with 2nd element
(cdddr ls))) ; grab the rest starting from 4th