Você está aqui: Java ::: Boletos Bancários, Arquivos de Remessa e Retornos do Banco ::: Caixa Econômica Federal - Banco 104 |
Boleto Bancário Java - Como calcular o dígito verificador da conta corrente - Módulo 11 - Boleto Caixa Econômica CNAB240Quantidade de visualizações: 2645 vezes |
|
Nesta dica mostrarei, passo-a-passo, como calcular o dígito verificador da conta corrente para o boleto e arquivos de remessa da Caixa Econômica Federal (Banco 104) de acordo com o Manual de Leiaute de Arquivo Eletrônico Padrão CNAB 240 - Cobrança Bancária Caixa - SIGCB - Versão 67.118 v024 micro. Tenha certeza de verificar sua versão do manual antes de usar o código abaixo. O Dígito Verificador da Conta é um código adotado pelo banco, em nosso caso a Caixa Econômica, para verificação da autenticidade do número da conta corrente, e tal número deverá ser calculado através do módulo 11. Mostro abaixo o código completo para o cálculo do dígito verificador. Note que só precisamos informar o número da conta (sem o dígito) e o código se encarrega de calcular o dígito. Aqui eu informei o número da conta em uma variável, mas você pode modificar o código para que o valor venha de um formulário ou do banco de dados. Eis o código Java: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
package arquivodecodigos;
public class Estudos{
public static void main(String[] args){
// vamos obter o dígito verificador para a conta a seguir
String conta = "109990";
int digito = digitoVerificadorConta(conta);
System.out.println("O dígito verificador para a conta " +
conta + " é " + digito);
}
// função que recebe o número da conta e devolve
// o dígito verificador
public static int digitoVerificadorConta(String conta){
// primeiro vamos remover os espaços do número da conta
conta = conta.trim();
// agora precisamos adicionar os zeros necessários
// para completar 12 posições
conta = String.format("%1$12s", conta).replace(' ', '0');
// agora vamos definir os índices de múltiplicação
String indices = "543298765432";
// e aqui a soma da multiplicação coluna por coluna
int soma = 0;
// fazemos a multiplicação coluna por coluna agora
for (int i = 0; i < conta.length(); i++){
soma = soma + Integer.parseInt(String.valueOf(conta.charAt(i))) *
Integer.parseInt(String.valueOf(indices.charAt(i)));
}
// obtemos o resto da divisão da soma por onze
int resto = soma % 11;
// subtraímos onze pelo resto da divisão
int digito = 11 - resto;
// atenção: Se o resultado da subtração for
// maior que 9 (nove), o dígito será 0 (zero)
if (digito > 9){
digito = 0;
}
return digito;
}
}
Ao executar este código Java nós teremos o seguinte resultado: O dígito verificador para a conta 109990 é: 6 É importante observar que o dígito verificador da agência e também do par agência/conta são sempre informados pela Caixa, geralmente pela agência na qual nossos clientes possuem conta. |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





