Fonction de Tri en LISP
Résolu
tksteph
Messages postés
204
Date d'inscription
Statut
Membre
Dernière intervention
-
6ril -
6ril -
Salut à tous!
Svp j'aimerais que qu'elqu'un m'aide avec un programme (fonction non predefinie) en langage LISP qui permet de ranger 3 entiers qu'il reçoit en entree par ordre croissant
Mer6 à ts.
Svp j'aimerais que qu'elqu'un m'aide avec un programme (fonction non predefinie) en langage LISP qui permet de ranger 3 entiers qu'il reçoit en entree par ordre croissant
Mer6 à ts.
A voir également:
- Fonction de Tri en LISP
- Fonction si et - Guide
- Comment faire un tri personnalisé sur excel - Guide
- Logiciel tri photo - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
3 réponses
Bonjour,
Tu peux déja utiliser cette fonction qui compare deux éléments entre eux :
(defun plusGrand(elem1 elem2)
(> elem1 elem2))
Tu peux déja utiliser cette fonction qui compare deux éléments entre eux :
(defun plusGrand(elem1 elem2)
(> elem1 elem2))
si t'es toujours sûr qu'il y aura 3 valeurs en entrée alors tu peux utiliser les fonction min(val1, val2, val3) et max(val1, val2, val3)
puis avec une formule comme celle-ci
(<= 0 x 9) ;true if x is between 0 and 9, inclusive
(< 0.0 x 1.0) ;true if x is between 0.0 and 1.0, exclusive
en remplaçant par min et max pour les bornes
Si tu peux avoir un nombre de valeur fluctuant alors tu insères le 1er nombre dans une liste, tu compares le 2ème nombre avec le 1er: si > alors tu l'ajoutes à la fin (simple fonction append()), si < alors tu l'insères à l'index de la 1ère valeur et tu répète les étapes de comparaison et d'insertion jusqu'à ce que tu ais fini
Tu obtiens ainsi une une liste dont le nombre sont ordonnés
puis avec une formule comme celle-ci
(<= 0 x 9) ;true if x is between 0 and 9, inclusive
(< 0.0 x 1.0) ;true if x is between 0.0 and 1.0, exclusive
en remplaçant par min et max pour les bornes
Si tu peux avoir un nombre de valeur fluctuant alors tu insères le 1er nombre dans une liste, tu compares le 2ème nombre avec le 1er: si > alors tu l'ajoutes à la fin (simple fonction append()), si < alors tu l'insères à l'index de la 1ère valeur et tu répète les étapes de comparaison et d'insertion jusqu'à ce que tu ais fini
Tu obtiens ainsi une une liste dont le nombre sont ordonnés