Outil de changement de base / conversion / écriture de nombres en base N. En arithmétique, une base désigne la valeur des puissances successives intervenant dans l'écriture d'un nombre.
Conversion en Base N - dCode
Catégorie(s) : Arithmétique
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Ecrire à dCode !
Outil de changement de base / conversion / écriture de nombres en base N. En arithmétique, une base désigne la valeur des puissances successives intervenant dans l'écriture d'un nombre.
Un nombre en base 10 s'écrit avec les chiffres 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9. Pour les autres bases, il est d'usage d'utiliser des lettres, et plus précisément les caractères suivants : 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ (Attention aux Majuscules et minuscules à partir de la base 37) afin d'écrire des nombres jusqu'en base 62.
Un nombre $ N $ dans une base $ b $ peut s'écrire sous la forme d'une addition de puissances de cette base $ n $.
Exemple : Le nombre $ N = 123_{(10)} $ (base 10) vérifie l'égalité $$ N = 789 = 7 \times 100 + 8 \times 10 + 9 \times 1 = 7 \times 10^2 + 8 \times 10^1 + 9 \times 10^0 $$
$ N= $ | $ c2 $ | $ c1 $ | $ c0 $ |
$ 789 $ | $ 7 $ | $ 8 $ | $ 9 $ |
Soit un nombre $ N $ composé de $ n $ chiffres $ { c_{n-1}, c_{n-2}, ..., c_2, c_1, c_0 } $ en base $ b $, alors peut l'écrire comme un polynôme avec les chiffres comme coefficients et la base b comme inconnue :
$$ N_{(b)} = \{ c_{n-1}, ..., c_1, c_0 \}_{(b)} = c_{n-1} \times b^{n-1} + ... + c_1 \times b^1 + c_0 \times b^0 $$
Pour calculer un changement de base, utiliser la base $ 10 $ comme référence, ou comme intermédiaire.
Exemple : Pour changer de la base $ 3 $ à la base $ 7 $, calculer de la base $ 3 $ à la base $ 10 $, puis de la base $ 10 $ à la base $ 7 $.
Utiliser l'algorithme suivant pour convertir de la base $ 10 $ à une base $ n $ :
$$ q_0=n; i=0; \mbox{ tant que } q_i > 0 \mbox{ faire } (r_i = q_i \mbox{ mod } b; q_{i+1}= q_i \mbox{ div } b ; i = i+1 ) $$
Le nombre converti est composé des chiffres $ r_{i=0...n-1} $ obtenus (avec $ r_0 $ le chiffre des unités).
Exemple : $ N = 123_{(10)} $ (base 10) is converted to base $ 7 $ :
$$ q_0 = 123 \\ r_0 = 123 \mbox{ mod } 7 = 4 \;\;\; q_1 = 123 \mbox{ div } 7 = 17 \\ r_1 = 17 \mbox{ mod } 7 = 3 \;\;\; q_1 = 17 \mbox{ div } 7 = 2 \\ r_2 = 2 \mbox{ mod } 7 = 2 \;\;\; q_2 = 2 \mbox{ div } 7 = 0 \\ 123_{(10)} = 234_{(7)} $$
Pour convertir un nombre $ N_1 $ écrit en base $ b $ en un nombre $ N_2 $ écrit en base $ 10 $, utiliser le fait que le nombre $ N_1 $ est composé de $ n $ chiffres $ { c_{n-1}, c_{n-2}, ..., c_1, c_0 } $ et utiliser l'algorithme suivant :
$$ N_2 = c_{n-1} ; \mbox{ for } ( i=n-2 \mbox{ to } 1 ) \mbox{ do } N_2=N_2 \times b+c_i $$
Le nombre $ N_2 $ obtenu est alors écrit en base $ 10 $.
L'algorithme est équivalent à faire le calcul $$ (( c_{n-1} \times b + c_{n-2} ) \times b + c_{n-3} ) ... ) \times b + c_0 $$
Exemple : Soit le nombre $ 123_{(7)} $ (en base $ 7 $), appliquer l'algorithme de conversion :
$$ 123 = \{1,2,3\} \\ N = 1 \\ N = 1*7+2 = 9 \\ N = 9*7+3 = 66 \\ N = 123_{(7)} = 66_{(10)} $$
Donc $ 123_{(7)} $ est égal à $ 66_{(10)} $ en base $ 10 $.
- base 2 (système binaire - base2) utilisée en informatique
- base 3 (système trinaire - base3)
- base 8 (système octal - base8)
- base 9 (système nonaire - base9)
- base 10 (système décimal - base10)
- base 12 (système duodécimal - base12), pour compter les heures ou les mois
- base 16 (système hexadécimal - base16) utilisée en informatique et les octets
- base 20 (système vigésimal - base20) utilisée par les numérations Mayas et les Aztèques
- base 26 (système alphabétique - base26)
- base 36 (système alphanumérique - base36)
- base 60 (système sexagésimal - base60) utilisée dans la mesure des minutes et des secondes et par les Sumériens et la numération babylonienne.
- base 62 (système alphanumérique complet - base62)
Toutes les bases peuvent être utilisées pour du codage informatique ou tout autre problème mathématique.
Exemple : Encoder et décoder la base64 est courant sur Internet.
dCode se réserve la propriété du code source de l'outil 'Conversion en Base N' en ligne. Sauf code licence open source explicite (indiqué CC / Creative Commons / gratuit), tout algorithme, applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou toute fonction (convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codé en langage informatique (PHP, Java, C#, Python, Javascript, Matlab, etc.) aucune donnée, script, copier-coller, ou accès API ne sera cédé gratuitement, idem pour télécharger Conversion en Base N pour un usage hors ligne, PC, tablette, appli iPhone ou Android !
Rendez-vous sur notre communauté Discord pour participer au forum d'entraide !