LISP nombre décimal

Fermé
JP - 12 oct. 2013 à 18:04
Matt 666 Messages postés 38 Date d'inscription jeudi 7 mars 2013 Statut Membre Dernière intervention 28 octobre 2020 - 8 déc. 2013 à 13:53
Bonjour,

J'ai une question concernant les nombre décimal, je voudrais que mon résulta n'affiche pas le nombre après la virgule si se dernier est un 0.

je m'explique:

(Setq a1 (getreal "\nDonner la valeur de a"))
(setq a (rtos a 2 1))

si a1 = 2.5000000000000 je voudrai que a soit = 2.5
si a1 = 2.0000000000000 je voudrai obtenir a soit =2

Je sais pas comment faire, merci de m'aider

JP


1 réponse

Matt 666 Messages postés 38 Date d'inscription jeudi 7 mars 2013 Statut Membre Dernière intervention 28 octobre 2020
8 déc. 2013 à 13:53
Salut !
Utilise la fonction fix dans ta condition, genre ça :
(if (eq (fix a1) a1)
)
Fix va ramener ton real à un int.
:)
0