Aller au contenu

calculer la médiane d\'un ensemble de valeurs ...


Messages recommandés

Posté(e)

Salut à tous,

 

existe -il en lisp une formule ou fonction mathématique dans l'API qui permette

de calculer la myenne, la médiane d'un ensemble de valeurs ?

 

si non, quelqu'un a t-il une petite fonction qui fait ceci ?

 

merci pour votre aide

 

Posté(e)

Controler les premiers résultats pour voir s'il n'y a pas de coquilles :exclam:

 

Exemple d'usage :

(valeur_mediane '(87 56.0 72 90.0 58 67.0 58.0 85 72.0 91 81.0 83))

ou si lst_nbr = liste de nombre (réel ou entier)

(valeur_mediane lst_nbr)

 

NB: Précision en virgule flottante fixé à 8 décimales (maxi)

 

(defun valeur_mediane (l_val / sv_lunit sv_lprec lg_l v_med)
(cond
	((not (member nil (mapcar 'numberp l_val)))
		(setq sv_lunit (getvar "LUNITS") sv_lprec (getvar "LUPREC"))
		(setvar "LUNITS" 2)
		(setvar "LUPREC" 8)
		(setq l_val (mapcar 'atof (acad_strlsort (mapcar 'rtos l_val))))
		(setq lg_l (length l_val))
		(if (zerop (rem lg_l 2))
			(setq v_med
				(/
					(+
						(nth (1- (/ lg_l 2)) l_val)
						(nth (/ lg_l 2) l_val)
					)
					2.0
				)
			)
			(setq v_med (nth (/ lg_l 2) l_val))
		)
		(setvar "LUNITS" sv_lunit)
		(setvar "LUPREC" sv_lprec)
	)
	(T (princ "\nListe de nombre incorrect\n") v_med nil)
)
v_med
)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité