J'ai le code suivant pour valider IMEI (non SV)IMEI ne passant pas Luhn Checksum
public static boolean luhnc(char[] digits) {
int sum = 0, s = 0;
for (int i = 0; i < digits.length - 1; i += 2) {
s = (digits[i+1] - '0') * 2;
sum += (s > 10 ? s - 9 : s) + (digits[i] - '0');
}
return 10 - (sum % 10) == (digits[digits.length-1] - '0');
}
Presque tous les IMEI vérifie à l'exception de mon Samsung Galaxy Note 4.
Je ne veux pas poster ici pour des raisons évidentes mais en même temps j'ai besoin de quelqu'un pour vérifier que cela fonctionne.
Peut-être que c'est ma mise en œuvre qui ne va pas.
Aidez-nous s'il vous plaît.
Ah. Merci. Donc c'est *> = * et pas *> *. Il valide maintenant. Merci. Inversement, nous pouvons soustraire 9 pour obtenir le même résultat en ajoutant les deux chiffres du plus grand nombre. :) – TheRealChx101
@ TheRealChx101 ha oui vous avez raison, je ne pense jamais à faire de cette façon ^^ – azro