public final class DigitoPara
extends java.lang.Object
Para exemplificar, o dígito do trecho 0000039104766 para os multiplicadores indo de 2 a 7 e usando módulo 11 é a seguinte:
0 0 0 0 0 3 9 1 0 4 7 6 6 (trecho numérico) 2 7 6 5 4 3 2 7 6 5 4 3 2 (multiplicadores, da direita para a esquerda e ciclando) ----------------------------------------- multiplicações algarismo a algarismo 0 0 0 0 0 9 18 7 0 20 28 18 12 -- soma = 112
Tira-se o módulo dessa soma e, então, calcula-se o complementar do módulo e, se o número for 0, 10 ou 11, o dígito passa a ser 1.
soma = 112
soma % 11 = 2
11 - (soma % 11) = 9
NOTE: Esta é uma versão otimizada para Android inspirada em https://github.com/caelum/caelum-stella/blob/master/stella-core/src/main/java/br/com/caelum/stella/DigitoPara.java
| Modifier and Type | Class and Description |
|---|---|
static class |
DigitoPara.Builder
Builder com interface fluente para criação de instâncias configuradas de
DigitoPara |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
calcula(java.lang.String trecho)
Faz a soma geral das multiplicações dos algarismos pelos multiplicadores, tira o
módulo e devolve seu complementar.
|
public final java.lang.String calcula(java.lang.String trecho)
trecho - Bloco para calcular o dígito