module GemCNS
Constants
- VERSION
Public Class Methods
generate()
click to toggle source
Your code goes hereā¦
# File lib/gemCNS.rb, line 6 def GemCNS.generate gera0 = ( rand 3 ) + 1 if gera0 == 3 gera0 = ( rand 3 ) + 7 end gera1 = ( rand 99999 ) + 1 gera2 = ( rand 99999 ) + 1 cns = gera0.to_s + gera1.to_s.rjust(5, '0') + gera2.to_s.rjust(5, '0') soma = toInteract(cns) resto = soma % 11 dv = 11 - resto if dv == 11 dv = 0 end if dv == 10 soma = toInteract(cns) soma += 2 resto = soma % 11 dv = 11 - resto cns += '001' + dv.to_s else cns += '000' + dv.to_s end #puts cns resultado = cns end
isValid(cns)
click to toggle source
# File lib/gemCNS.rb, line 43 def GemCNS.isValid(cns) if cns.length < 15 false else tste = cns[0..10] soma = toInteract(tste) resto = soma % 11 dv = 11 - resto if dv == 11 dv = 0 end if dv == 10 soma = toInteract(tste) soma += 2 resto = soma % 11 dv = 11 - resto tste += '001' + dv.to_s else tste += '000' + dv.to_s end if tste == cns true else false end end end
Private Class Methods
toInteract(cns)
click to toggle source
# File lib/gemCNS.rb, line 78 def GemCNS.toInteract(cns) i = 15 soma = 0 cns.each_char{ |c| soma += c.to_i * i i = i - 1 } resultado = soma end