Un cryptarithme (cryptage arithmétique) est une opération
écrite avec des mots, chaque mot est composé de lettres (lettres minuscules
et majuscules sont considérées différentes) et chaque lettre
représente toujours le même chiffre.
La lettre initiale d'un mot ne représente jamais le chiffre 0.
Si un chiffre est explicitement présent dans le cryptarithme, il ne sera pas utilisé pour une lettre sauf si la case Réutiliser chiffres fixés est cochée.
Le but du jeu est de trouver le chiffre associé à chaque lettre pour que
l'opération soit exacte dans la base de calcul (écrite en base 10) choisie!
EXEMPLE
Voici un cryptarithme que vous auriez du mal à résoudre à la main: % crypta CHEVAL+VACHE=OISEAU
La solution unique est: C=4, H=9, E=6, V=1, A=2, L=7, O=5, I=0, S=8, U=3,
soit 496127+12496=508623
FORMULAIRE
Vous pouvez résoudre des cryptarithmes via le formulaire suivant:
Additions
Multiplication
Opération
Attention: pour une multiplication trop grande,
le délai maximal pour la recherche risque d'être
dépassé (message du navigateur).
ALGORITHME
Par exemple, le cryptarithme ABC+DE=FGH équivaut au système d'équations obtenues
par colonnes (de droite à gauche): C+E=H-10*r1 , r1+B+D=G-10*r2 , r2+A=F
où r1,r2 sont des retenues dont l'intervalle de variations est lié
au nombre de lignes. En fixant les retenues, on peut faire varier les valeurs des lettres dans une colonne
pour que l'opération soit exacte et passer à la colonne suivante jusqu'à une solution.
Si l'opération dans une colonne reste fausse, on revient à la colonne précédente.
On change les valeurs des retenues quand on revient à la première colonne de droite.
On arrête quand l'intervalle des retenues a été exploré.
Une soustraction change le signe dans l'équation et la borne inférieure de l'intervalle de la
retenue.
Une multiplication est remplacée par une série d'additions: AB*CD=EFG => B*D=G-10*r1 , r1+D*A+C*B=F-10*r2 , r2+C*A=E
AUTEUR
Fabrice JURADO [Juin 1987 (Pascal), Janvier 2001 (C), Novembre 2008]