Bonjour,
je suis nouveau ici ,
je débute en lisp ,
alors ma question et comment convertir une liste en code avec cons et quote
par exemple
(a(b((not c)(d))(e)
(cons.................................,
merci de votre reponse
Bonjour,
je suis nouveau ici ,
je débute en lisp ,
alors ma question et comment convertir une liste en code avec cons et quote
par exemple
(a(b((not c)(d))(e)
(cons.................................,
merci de votre reponse
hello,
deja, dans ton expression de depart, il n'y a pas autant de parentheses fermantes que d'ouvrantes!
Bonjour,
— « cons » produit une « construction », qui est en fait une paire d'éléments ;
— Une liste est formée par une suite de « cons » imbriquées : dans chacune de ces paires, le terme de gauche est un des éléments de la liste et celui de droite, une autre paire qui contient le reste de la liste, récursivement. La liste touche à sa fin lorsque le terme de droite est NIL.
Ainsi :
Code lisp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 > (cons 1 (cons 2 (cons 3 (cons 4 (cons 5 nil))))) (1 2 3 4 5) >
Apparemment, c'est un exercice scolaire. Donc on ne te rendrait pas service si l'on te donnait la solution toute faite, qui reste ma foi fort simple. Est-ce que tu dois écrire une fonction qui transforme n'importe quel liste en son code LISP associé ou est-ce que tu dois juste écrire à la main le code qui donnerait « (A (B (C D) E) (F)) » ?
Ta sous-liste est un élément de ta liste, au même titre qu'un atome.
Il s'agira donc d'une construction « cons », puisque c'est une (sous-)liste, mais en tant qu'élément à gauche de la paire adéquate.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager