Je tente d'écrire une fonction de système qui prend une liste de la forme:liste Scheme modification
((#f ((1 1) (2 1)))
(#f ((1 3) (5 1)))
(#f ((1 4) (7 1)))
)
et supprime toutes les #f pour donner une liste comme:
(((1 1) (2 1))
((1 3) (5 1))
((1 4) (7 1))
)
Je essayé le code suivant, mais ne peut pas le faire fonctionner:
(define meth
(lambda lst
(if (equal? (cdr lst) '())
(cdr (car lst))
(cons (list-ref (car lst) 1) (meth (cdr lst))))))
Est-ce que quelqu'un sait comment faire cela? Merci.
Notez que 'cadr' renvoie le deuxième élément. (Aussi, c'est une bonne réponse - mais la "modification" dans le texte de la question est fausse.) –