Classe CPF
Publicado por Jeffeson Luiz Oliveira de Campos 14/10/2008
[ Hits: 7.634 ]
Homepage: http://jeffersoncampos.eti.br
Esta classe recebe um cpf e seus respectivos dígitos verificadores. É capaz de validar esse cpf e retornar os dígitos verificadores corretos.
package funcionario; /** * * @author Jefferson Luiz Oliveira de Campos * data: 9/10/2008. * Este programa é licenciado via GPLv2. Sinta-se a vontade para exercer as 4 * liberdades... ;) <--> só não esquça de citar o autor.... ^^'' * * Esta Classe recebe um cpf e seus respectivos digitos verificadores. Ela é * capaz de validar esse cpf e retornar os digitos verificadores corretos. * */ public class cpf { private String nome; private String cpf; private int dig1; private int dig2; public cpf (String n, String c, int d1, int d2) { this.nome = n; this.cpf = c; this.dig1 = d1; this.dig2 = d2; }//FIM CPF public Boolean calcDigVerificador () { if (this.cpfValido ()){ if (this.calcDig1 () == this.dig1) { //System.out.println ("Dig1 OK!"); if (this.calcDig2 () == this.dig2) { //System.out.println ("Dig2 OK!"); return true; } else { System.out.println ("Dig2 Deu merda!"); return false; }//FIM SENAO } else { System.out.println ("Dig1 Deu merda!"); return false; }//FIM SENAO } else { System.out.println ("CPF FORMATO INVALIDO!"); return false; }//FIM SENAO }//FIM calcDigVerificador //Verifica a validade do cpf, indicando como inválido cpf's que possuem //todos os digitos repetidos. Ex.: 111.111.111-11 é inválido. public Boolean cpfValido () { int i; String digInicial = this.cpf.substring(0,1); Boolean valido = false; for (i = 1; i < 9; i++){ if (!digInicial.equals(this.cpf.substring(i,i + 1))) { valido = true; }//FIM SE }//FIM PARA return valido; }//FIM cpfValido public int calcDig1 () { int i, resto, dig, soma = 0; for (i = 0; i < 9; i++) { soma += ((Integer.parseInt(this.cpf.substring(i,i + 1))) * (i + 1)); }//FIM PARA resto = soma % 11; if (resto == 10) { dig = 0; } else { dig = resto; }//FIM SENAO return dig; }//FIM calcDig1 public int calcDig2 () { int i, resto, dig, soma = 0; for (i = 0; i < 9; i++) { soma += ((Integer.parseInt(this.cpf.substring(i,i + 1))) * (12 - (i + 1))); }//FIM PARA soma += this.calcDig1 () * 2; soma *= 10; resto = soma % 11; if (resto == 10) { dig = 0; } else { dig = resto; }//FIM SENAO return dig; }// FIM calcDig2 public String getCpf () { return cpf; } public void setCpf (String cpf) { this.cpf = cpf; } public int getDig1 () { return dig1; } public void setDig1 (int dig1) { this.dig1 = dig1; } public int getDig2 () { return dig2; } public void setDig2 (int dig2) { this.dig2 = dig2; } public String getNome () { return nome; } public void setNome (String nome) { this.nome = nome; } }//FIM cpf
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Falta pacotes de suporte ao sistema de arquivos (Gerenciador de discos... (2)
Enzo quer programar mas não faz código pra não bugar (12)
Erro de Montagem SSD Nvme (12)
WebScrapping através de screenshot devido a bloqueios de Shadow DOM (1)