N° |
Fonction |
Catégorie |
Version |
BIL 24 |
BiL_Rot |
Gestion des Listes |
1.0 - Janvier 2007 |
Description
But
|
Effectue la rotation par 1 dans une liste.
|
Prototype
|
(BiL_Rot Liste)
|
Argument
|
Liste - La liste à traiter - Liste -
|
Retours
|
La liste modifiée
|
Var. globales
|
Néant
|
Description
|
Déplace le premier élément d’une liste à la fin.
|
Notes
|
Si la liste est nulle, nil est retourné (dans une liste)
|
Exemples
|
Commande: (setq List1 '(1 2 a b 5))
Commande: (BiL_Rot List1)
retourne (2 A B 5 1)
Commande: (BiL_Rot List2)
retourne (nil)
List2 n’existe pas, donc nulle.
Commande: (setq aa "texte")
Commande: (BiL_Rot aa)
retourne nil
aa n’est pas une liste, et n’est pas nul.
|
La fonction
1- (defun BiL_Rot (*List1)
2- (if (listp *List1)
3- (append (cdr *List1)
4- (list (car *List1))
5- )
6- )
7- )
Ligne 2 : Si *List1 est une liste,
Ligne 3: ajoute à la liste *List1 auquel on a enlevé le 1er élément
Ligne 4: le 1er élément de *List1 transformé en liste.
Listp : Retourne T si *List1 est une liste, nil dans les autres cas.
Append : Prend un nombre indéfini de listes et les traite ensemble comme une seule liste..
Cdr : Renvoie une liste contenant tous les éléments de cette liste sauf le premier.
List : Prend un nombre quelconque d'expressions et les regroupe dans une liste.
Car : Renvoie le premier élément d'une liste.