changement de base

Le
Sébastien Kirche
Bonjour (et bonne rentrée à tous ;)

je n'arrive pas à retrouver un truc dans le manuel ni sur le net :
comment représenter un nombre dans une base n.

Il y a peu j'étais tombé sur une fonction du genre (int-to-string nombre
base) mais plus moyen de la retrouver. Il me semble que ça permettait de
représenter des valeurs dans des bases de 2 à ~30. J'ai cherché avec
"base" et "radix" mais rien trouvé de pertinent.

Un coup de pouce ?
--
Sébastien Kirche
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Vincent Belaïche
Le #21768911
Calc parmet de faire ça.

En lisp:

(require 'calc-ext)
(defvar calc-command-flags)
(message "10 en base 7=%s" (calc-eval "10"))


Avec l'interface Calc

C-x * * ; entrer dans la calculette
C-u 7 d r ; mettre la base à 7
10 <ret> ; pousser 10 sur la pile


À+
Vincent.



Sébastien Kirche a écrit :
Bonjour (et bonne rentrée à tous ;)

je n'arrive pas à retrouver un truc dans le manuel ni sur le net :
comment représenter un nombre dans une base n.

Il y a peu j'étais tombé sur une fonction du genre (int-to-string nombre
base) mais plus moyen de la retrouver. Il me semble que ça permettait de
représenter des valeurs dans des bases de 2 à ~30. J'ai cherché avec
"base" et "radix" mais rien trouvé de pertinent.

Un coup de pouce ?
Sébastien Kirche
Le #21768901
Le 6 septembre 2009 à 11:17, Vincent Belaïche s'est exprimé ainsi :

Calc parmet de faire ça.

En lisp:

(require 'calc-ext)
(defvar calc-command-flags)
(message "10 en base 7=%s" (calc-eval "10"))


Avec l'interface Calc

C-x * * ; entrer dans la calculette
C-u 7 d r ; mettre la base à 7
10 <ret> ; pousser 10 sur la pile



Je note. Mais il m'avait semblé que c'était possible avec un simple
appel elisp. Je ne retrouve pas et ça m'agace :oS
--
Sébastien Kirche
Vincent Belaïche
Le #21768831
Salut,

Je me réponds à moi-même car je m'aperçois que j'avais oublié le plus
important dans le code lisp donné en exemple:


(require 'calc-ext)
(defvar calc-command-flags)
(calc-radix 7) ;<- oublié dans mon message précédent
(message "10 en base 7=%s" (calc-eval "10"))


Note aussi que le langage Lisp permet d'écrire directement des nombres dans
une autre racine que 10, par exemple voici 10 en base 10, 2, 8, 16 et 7:

10
#b1010
#o12
#xA
#7r13

Vincent.

Vincent Belaïche a écrit :
Calc parmet de faire ça.

En lisp:

(require 'calc-ext)
(defvar calc-command-flags)
(message "10 en base 7=%s" (calc-eval "10"))


Avec l'interface Calc

C-x * * ; entrer dans la calculette
C-u 7 d r ; mettre la base à 7
10 <ret> ; pousser 10 sur la pile


À+
Vincent.



Sébastien Kirche a écrit :
Bonjour (et bonne rentrée à tous ;)

je n'arrive pas à retrouver un truc dans le manuel ni sur le net :
comment représenter un nombre dans une base n.

Il y a peu j'étais tombé sur une fonction du genre (int-to-string nombre
base) mais plus moyen de la retrouver. Il me semble que ça permettait de
représenter des valeurs dans des bases de 2 à ~30. J'ai cherché avec
"base" et "radix" mais rien trouvé de pertinent.

Un coup de pouce ?
Publicité
Poster une réponse
Anonyme