Cette semaine, c'est Kevin qui vous propose un #KataOfTheWeek : Formule de Luhn

Briefing du Kata : L'algorithme procède en trois étapes.

  1. 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) :
  2. 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).
  3. 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).
  4. La somme de tous les chiffres obtenus est effectuée.
  5. 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 😉