Sha256: 1b985b38c3b0a4baab210584117bd3cebf96085f0631ee90e05bca61905644c5
Contents?: true
Size: 1.56 KB
Versions: 1
Compression:
Stored size: 1.56 KB
Contents
module BoletoBancario module Calculos # === Módulo 11 Fator de 9 a 2 - Resto 10, sendo X # <b>Essa classe difere da outra com Modulo11FatorDe9a2, no momento de verificar o resto da divisão por 11.</b> # # <b>Para mais detalhes veja a classe Modulo11FatorDe9a2.</b> # # ==== Exemplo 10 como resto da divisão # # Considerando o seguinte número: '100008'. # # 1) Multiplicando a seqüência de multiplicadores: # # 1 0 0 0 0 8 # * * * * * * # 4 5 6 7 8 9 # # 2) Soma-se o resultado dos produtos obtidos no item “1” acima: # # 4 + 0 + 0 + 0 + 0 + 72 # # => 76 # # 3) Determina-se o resto da Divisão: # # 76 % 11 # # => 10 # # 4) Quando o resultado for '10', o dígito será: # # resultado == 10 # # => 'X' =============> Resultado final retornado. # # @example # # BoletoBancario::Calculos::Modulo11FatorDe9a2RestoX.new('184122') # # => 'X' # class Modulo11FatorDe9a2RestoX < Modulo11FatorDe9a2 # Calcula o número pelos fatores de multiplicação de 9 a 2. # Depois calcula o resto da divisão por 11. # Se o resultado desse cálculo for igual a 10, então o DAC = X. # Se o resultado desse cálculo for menor que 10, retornar o resultado. # # @return [Fixnum] # def calculate if mod_division.equal?(10) 'X' else mod_division end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
boleto_bancario-0.0.2 | lib/boleto_bancario/calculos/modulo11_fator_de9a2_resto_x.rb |