Ziemlich einfache Frage. Mein anfänglicher Ansatz war, eine andere Prozedur zu definieren, um das letzte Element von lst innerhalb des vorletzten zu finden. Nachdem ich das letzte Element gefunden habe, habe ich es mit dem ersten Element von lst (car lst) angehängt. So funktioniert Append. (append list1 list2) zB (anhängen '(1 2 3)' (2 1 5)) -> (1 2 3 2 1 5) Ich frage mich, ob das Problem nur mit meiner Syntax ist, aber ich bin nicht sicher.Geben Sie das erste und letzte Element in der Liste zurück. Schema
(define (first-last lst)
(define (last lst)
(cond ((null? (cdr lst))(car lst))
(else (last (cdr lst)))))
(append(car lst)(last lst)))
Der Fehler tritt in der
(append(car lst)(last lst)))
"MCAR: Vertragsverletzung
erwartet: mpair
gegeben: 1"
Dies ist meine erste Frage auf stapeln, es tut mir also leid, wenn die Frage nicht richtig dargestellt wird.
Vielen Dank für Ihre Antwort! – wooot