Cette semaine, c'est Kevin qui vous propose un #KataOfTheWeek : Formule de Luhn
Briefing du Kata : L'algorithme procède en trois étapes.
- L'algorithme multiplie par deux un chiffre sur deux, en commençant par l'avant dernier et en se déplaçant de droite à gauche. Si un chiffre qui est multiplié par deux est plus grand que neuf (comme c'est le cas par exemple pour 8 qui devient 16), alors il faut le ramener à un chiffre entre 1 et 9. Pour cela, il y a 2 manières de faire (pour un résultat identique) :
- Soit les chiffres composant le doublement sont additionnés (pour le chiffre 8: on obtient d'abord 16 en le multipliant par 2 puis 7 en sommant les chiffres composant le résultat : 1+6).
- Soit on lui soustrait 9 (pour le chiffre 8 : on obtient 16 en le multipliant par 2 puis 7 en soustrayant 9 au résultat).
- La somme de tous les chiffres obtenus est effectuée.
- Le résultat est divisé par 10. Si le reste de la division est égal à zéro, alors le nombre original est valide.
Saurez-vous résoudre le problème ?
Bon courage ! Retrouvez la solution dans cet article 😉