Vous êtes sur la page 1sur 1

www.impuestos.gob.

bo
SISTEMA DE FACTURACIÓN
ELECTRÓNICA
1

ALGORITMO BASE 11 – MÓDULO 11


Algoritmo de cálculo Módulo 11 para la generación del código autoverificador
del CUF.

public String calculaDigitoMod11(String dado, int numDig,


int limMult, boolean x10)
{
int mult, soma, i, n, dig;

if (!x10) numDig = 1;
for(n = 1; n <= numDig; n++) {
soma = 0;
mult = 2;
for(i = dado.length() - 1; i >= 0; i--) {
soma += (mult * Integer.parseInt(dado.
substring(i, i + 1)));
if(++mult > limMult) mult = 2;
}
if (x10) {
dig = ((soma * 10) % 11) % 10;
}
else {
dig = soma % 11;
}
if (x10) {
dig = ((soma * 10) % 11) % 10;
}
else {
dig = soma % 11;
}
if (dig == 10) {
dado += “1”;
}
if (dig == 11) {
dado += “0”;
}
if (dig < 10) {
dado += String.valueOf(dig);
}
}
return dado.substring(dado.length() - numDig, dado.length());
}

Ejemplo de consumo del método:


public String obtenerModulo11(String pCadena) {
String vDigito = calculaDigitoMod11(pCadena, 1, 9, false);
return vDigito;
}

LÍNEA GRATUITA DE CONSULTAS TRIBUTARIAS 800 10 34 44

Vous aimerez peut-être aussi