Aller au contenu

conversion hexadecimal -> base 10


bruno_l

Messages recommandés

j'ai trouvé dans l'aide d'autocad ceci

 

(defun BASE ( bas int / ret yyy zot )

(defun zot ( i1 i2 / xxx )

(if (> (setq xxx (rem i2 i1)) 9)

(chr (+ 55 xxx))

(itoa xxx)

)

)

(setq ret (zot bas int) yyy (/ int bas))

(while (>= yyy bas)

(setq ret (strcat (zot bas yyy) ret))

(setq yyy (/ yyy bas))

)

(strcat (zot bas yyy) ret)

)

ca transforme un entier decimale dans une autre base

comme ca (base 16 586)

j'ai fait un truc bien bourin du style

 

(defun hex2dec(hex)

(setq cx 0)

(while (/= hex (base 16 cx))

(setq cx (1+ cx)))

)

 

et ca marche, m'ouais mais c'est vraiment trés bourrin !!!

Lien vers le commentaire
Partager sur d’autres sites

En v'la une autre.

 

Je suis sur qu'il y a mieux !

(defun nbrtostr (nb /  )
(cond
	((eq nb 10) "A")
	((eq nb 11) "B")
	((eq nb 12) "C")
	((eq nb 13) "D")
	((eq nb 14) "E")
	((eq nb 15) "F")
	(T (itoa nb))
)
)
(defun c:dec2hex ( / nb f_o l_o d_o)
(initget 5)
(setq nb (getint "\nDonnez un nombre entier: "))
(setq f_o (/ nb 16) l_o (rem nb 16))
(if (> f_o 15)
	(setq d_o "1" f_o (rem f_o 16))
	(setq d_o "")
)
(strcat d_o (nbrtostr f_o) (nbrtostr l_o))
)

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

Lien vers le commentaire
Partager sur d’autres sites

Décidement, j'assure pas un caramel :(

 

Je répond à côté et mon code après vérifs est nul (erroné dans les grand nombres)

 

Je retire donc tout ce que j'ai dit, virez moi ces posts :mad:

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

Lien vers le commentaire
Partager sur d’autres sites

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é