AutoLisp trier une liste avec index
Salut,
j'ai un petit probleme pour trier une liste de nombres rééls sous autolisp
je suis partit sur un truc simple " google"
http://www.developpez.net/forums/d98...ste-n-element/
mais apparement en autolisp y'a pas les fonction du common lisp ! qui simplifie la vie
je planche dessus depuis un peu plus d'une heure
je m'arrache les cheveux mais je n'y arrive pas depuis que je les ait coupés :roll:
Alors on va partir sur un truc tres bourrin
Code:
1 2 3 4 5 6 7 8
| ; la liste d'exemle
(setq L (list 5 6 4 2 1 3))
; - on cherche l'element min de L et on enregistre son indice dans ListIndex
; - on enleve l'élément min de L => comment faire
; - et on refait en boucle
; plus facile a dire qu'a faire
(setq Min (apply 'min L)) ; d'appres <a href="http://forums.augi.com/showthread.php?7808-Autolisp-List-Problem" target="_blank">http://forums.augi.com/showthread.ph...p-List-Problem</a> |
mais j'essai de modifier celui là aussi en paralle
http://www.programcreek.com/2010/10/...ent-in-a-list/
Code:
1 2 3 4 5 6
| (defun get-min ( m l )
(cond ((null (car l)) m)
((< (car l) m) (get-min (car l) (cdr l)))
(t (get-min m (cdr l))))
) |
comment recuperer l'indice de l'élément