Il est certain qu'au début les nombres étaient représentés matériellement par :
L'idée de faire des groupements est venue très vite ainsi un caillou de couleur blanche pouvait représenter 5 ou 10 ou 20 unités et un caillou de couleur noire une unité, de la même façon une encoche de plus grosse taille ou inclinée différemment pouvait correspondre à un certain nombre d'unités, un noeud de plus grosse taille de la même façon pouvait représenter un groupement d'unités.

Les nombres suivants ont souvent servi de 'base' pour les regroupements:
Quand les nombres apparaissent dans l'écriture ils apparaissent d'abord sous forme de bâtons, les regroupements peuvent être faits avec d'autres symboles, ou bien les mêmes disposés différemment.

Les grecs et les romains disposant d'un alphabet utilisent les lettres de cet alphabet pour écrire les nombres.
Un nombre est donc une succession de symboles de poids décroissants (en principe)
MCCXXI = 1221
Avec quelques astuces pour des économies d'écriture, si un symbole de poids plus fort précède un symbole de poids moins fort c'est qu'il faut faire une soustraction:
Ainsi on écrit  IX au lieu de VIIII et XC au lieu de LXXXX

Les chiffres romains sont suffisants pour exprimer des quantités modestes, mais se prêtent mal au calcul, il faut être expert pour faire des multiplications à moins d'utiliser un appareil spécialisé (boulier).

La révolution vient de l'Inde avec la numération dite 'de position' rendue possible par l'invention du chiffre 0 (initialement noté par un simple point).
L'idée est d'exprimer tous les nombres naturels (qui sont en nombre infini) au moyen d'un nombre fini de symboles (appelés des chiffres), en choisissant une base unique (usuellement 10 à cause de la morphologie humaine) et en utilisant la division euclidienne à répétition.

Supposons que nous disposions uniquement de 3 symboles:
Et qu'avec ces 3 symboles nous voulions écrire le nombre 19.

Nous commençons par diviser 19 par 3 (faire des paquets de 3). On en trouve 6 et il reste une unité donc β sera le chiffre de poids faible situé le plus à droite. On fait la même chose avec les paquets de 3 (groupement par 3, on en trouve 2 et il ne reste rien donc α sera le chiffre des 3 immédiatement à gauche du précédent. L'opération s'arrête car on ne peut plus faire de groupement de 3. On écrit donc le chiffre des paquets de 9 soit γ .


En résumé, avec un système ternaire comportant les seuls chiffres α , β , γ le nombre 19 s'écrit: γαβ

En résumé quand un nombre n est écrit Cn C n-1 ......C1 C0 en base b où les Ci    0 ≤ Ci < b sont les chiffres de n dans la base b, le nombre n vaut C0 +bC1 +b2 C2 +...+bn Cn .
Inversement pour avoir l'écriture de n en base b, on procède ainsi:
On effectue la division euclidienne de n par b  n=bq0 +r0 r0 sera C0 .
Puis on divise q0 par b  q0 =bq1 +r1  r1 sera C1 .
et ainsi de suite jusqu'à ce qu'on trouve un quotient qn < b qui sera le chiffre Cn de poids fort de n

La base la plus utilisée est évidemment la base 10, ce n'est pas la meilleure possible. De fait la base 12 serait idéale parce que les critères de divisibilité par 2, 3, 4 et 6 sont évidents. En base 10 seuls les critères de divisibilité par 2 et 5 (les diviseurs de la base) sont évidents.

Vous pouvez maintenant générer quelques exemples:
Donner deux entiers 0 <  m ≤100000 et 1 < n < 10    m: n:
le nombre m s'écrit en base n:
Message d'erreur éventuel:

Café Python

Ce programme convertit un nombre en une base b < 10.