Aqui está o algoritmo de validação de CPF * Descrição No Brasil existe o CPF (Cadastro de Pessoas Físicas) que serve para identificar cada indivíduo no país. O número do CPF é composto de 11 dígitos, sendo os dois últimos os dígitos de verificação. A fórmula para verificar a validade do número do CPF é simples e é explicada abaixo: Vamos tomar como exemplo o número 123.456.789-09 * 1º Dígito Verificador Primeiro calculamos a soma da multiplicação dos 9 primeiros dígitos por 10, 9, 8, ... , 3, 2, respectivamente. Ou seja Soma = (1*10) + (2*9) + ... + (8*3) + (9*2)
Em seguida, dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão). Valor = (Soma/11) * 11 Por fim, subtraímos Valor de Soma. Resultado = Soma - Valor Note que acabamos de realizar o módulo de Soma e 11. As duas operações anteriores podem ser substituídas por Resultado = Soma módulo 11. Agora analisamos Resultado: Se Resultado for igual à 1 ou à 0, então o 1º dígito verificador é 0; Caso contrário, o 1º dígito verificador é o resultado da subtração de Resultado de 11. * 2º Dígito Verificador Primeiro calculamos a soma da multiplicação dos 9 primeiros dígitos por 11, 10, 9, ... , 4, 3, respectivamente e em seguida somamos com (Digito1*2), sendo que Digito1 é o valor encontrado para o 1º dígito verificador. Ou seja Soma = (1*11) + (2*10) + ... + (8*4) + (9*3) + (Digito1*2) O resto é semelhante ao que foi feito anteriormente. Dividimos e multiplicamos por 11. (Nota: Ao multiplicarmos utilizamos o valor inteiro da divisão). Valor = (Soma/11) * 11 Por fim, subtraímos Valor de Soma. Resultado = Soma - Valor Agora analisamos Resultado: Se Resultado for igual à 1 ou à 0, então o 2º dígito verificador é 0; Caso contrário, o 2º dígito verificador é o resultado da subtração de Resultado de 11. No nosso exemplo (123.456.789-09) o número é válido. Espero que ajude []'s Em Segunda 31 Março 2003 13:14, LAESSE CANUTO DE ARAUJO JUNIOR ARAUJO escreveu: > Pessoal, vocês poderiam me passar a rotina de validação de CPF? > Se enviarem as críticas internas do progrma também sou muito grato. > Atenciosamente, > Laesse Júnior. > > > > > > _________________________________________________________________ > MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com > > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > historico: http://www.mail-archive.com/java-list%40soujava.org.br > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------