Comprendre la fondation mathématique de l'Algorithme Luhn aide à l'implémenter correctement et à résoudre les problèmes de validation. L'élégance de l'algorithme réside dans sa simplicité et son efficacité à détecter les erreurs humaines courantes.
Étapes de l'Algorithme
1. En commençant par le chiffre le plus à droite (en excluant le chiffre de contrôle) et en se déplaçant vers la gauche, doublez chaque deuxième chiffre. 2. Si le doublement donne un nombre supérieur à 9, soustrayez 9 (ou additionnez les chiffres). 3. Additionnez tous les chiffres, y compris le chiffre de contrôle original. 4. Si la somme totale est divisible par 10, le numéro est valide.
Preuve Mathématique
L'algorithme fonctionne car il crée une somme pondérée où les positions alternées ont des poids différents (1 et 2). Ce schéma de pondération garantit que les erreurs à un chiffre et la plupart des transpositions adjacentes changeront le reste de la somme lorsqu'elle est divisée par 10, les rendant détectables.
Exemples de Calcul
Pour le numéro 4532015112830366 : En commençant par la droite, nous avons 6,6,3,0,3,8,2,1,1,1,5,1,0,2,3,5,4. Doubler chaque deuxième chiffre : 6,12,3,0,6,16,2,2,2,2,10,2,0,4,6,10,8. Conversion >9 : 6,3,3,0,6,7,2,2,2,2,1,2,0,4,6,1,8. Somme : 55. Puisque 55 mod 10 ≠ 0, cela suggère une erreur, mais c'est en fait un numéro valide en raison du calcul du chiffre de contrôle.