Basic Algorithm

Um dos algoritmos para validação de números de identificação é o algoritmo luhn

É também conhecido como “algoritmo modulo 10”, é uma fórmula de soma de verificação, é utilizado para validar uma diversidade de números de identificação.
O algoritmo prossegue em três passos.
No primeiro passo, cada segundo número, começando com o segundo da direita para a esquerda, é duplicado. Se o resultado for superior a 9, a soma do resultado é formada entre os dois dígitos (por exemplo 10 = 1 + 0 = 1, 14 = 1 + 4 =7)
No segundo passo todos os números são somados.
Finalmente, no último passo, o resultado é dividido por 10. Se o restante for igual a 0, é a sequência original de dígitos, que foi verificada e é válida.
Ej:
Dígitos do número de conta 7 9 9 9 2 7 3 9 8 7 1 x
Dobrar cada um dos seguintes 7 18 9 4 7 6 9 16 7 2 x
Adicionar os dígitos 7 9 9 4 7 6 9 7 7 7 7 2 =67
Nota: O “x” no número de conta é o número de verificação, que determina se o número de conta é válido.
Mas como sabemos qual é o número com o valor “x”
O dígito de controlo (x) pode ser obtido a partir de (67 * 9 mod 10). Em termos simples:
Calcular a soma dos dígitos 67.
Multiplicar por 9 e o resultado é 603.
Tirar o último dígito 3.
O resultado é o dígito de controlo.
A seguinte é o algoritmo luhn realizado em java:
public static boolean check-digitluhn(int digits){
int sum = 0;
int length = digits.length;
for(int i = 0; i < length; i++) {
///take the digits in reverse order
int digit = digits;

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *