Pesquisa · Mapa mental

Dígito verificador

Dígito verificador ou algarismo de controle é um mecanismo de autenticação utilizado para verificar a validade e a autenticidade de um valor numérico, evitando dessa forma fraudes ou erros de transmissão ou digitação.

Fonte: Wikipédia (pt)Atualizado em 27/10/2026
01

Utilização

O dígito de verificação algoritmos é geralmente projetado para capturar erros de transcrição humano. Em ordem de complexidade, estes incluem o seguinte: É usado normalmente em representações numéricas que exijam integridade, como por exemplo:

02

Exemplos

O método de cálculo desses dígitos varia conforme o caso, porém muitos deles se baseiam em duas rotinas tradicionais: Módulo 11 e Módulo 10. Abaixo temos uma explicação do cálculo dessas duas rotinas:

Módulo 11

Conforme o esquema abaixo, para calcular o primeiro dígito verificador, cada dígito do número, começando da direita para a esquerda (do dígito menos significativo para o dígito mais significativo) é multiplicado, na ordem, por 2, depois 3, depois 4 e assim sucessivamente, até o primeiro dígito do número. O somatório dessas multiplicações é multiplicado por 10 e depois dividido por 11. O resto desta divisão (módulo 11) é o dígito verificador. Para calcular o próximo dígito, considera-se o dígito anterior como parte do número e efetua-se o mesmo processo. No exemplo, foi considerado o número 1201611227: Considerando o número 2615336, onde o 6 é o dígito verificador e a validação é através do "módulo 11", este não seria considerado um número válido, pois o número correto é 2615339, onde 9 (resto 2 -> DV = 11 - 2 = 9) é o dígito verificador gerado pelo módulo 11.

Módulo 10

Conforme o esquema abaixo, cada dígito do número, começando da direita para a esquerda (menos significativo para o mais significativo) é multiplicado, na ordem, por 2, depois 1, depois 2, depois 1 e assim sucessivamente. Em vez de ser feito o somatório das multiplicações, será feito o somatório dos dígitos das multiplicações (para o exemplo proposto, o resultado da multiplicação 6x2 = 12, resultará na soma dos seus dígitos 1 + 2 = 3; para 5x2 = 10, será 1 + 0 = 1). O somatório será dividido por 10 e se o resto (módulo 10) for diferente de zero, o dígito será 10 menos este valor. Se o resto (módulo 10) for zero (0) o DV também será zero (0). O Banco Itaú utiliza módulo 10 para a definição do digito verificador nas contas em suas agências no Brasil, sendo utilizado o número da agência com 4 dígitos e o número da conta com 5 digitos para efeitos de definição do dígito verificador da conta, como demonstrado abaixo:

Realização dos cálculos em C++

O código é bastante simples, consiste em receber uma string representando os números do CPF sem os dígitos verificadores, e um array do tipo short, que será preenchido com os valores da string mais os dígitos verificadores, sendo devolvida tanto a string como o array contendo os dígitos já calculados. Há também um função que identifica os estados com base no antepenúltimo dígito (quando contado com os verificadores).

Vídeos recomendados

Fontes consultadas

Continue pesquisando