Class: LuhnAlgorithm
- Inherits:
-
Object
- Object
- LuhnAlgorithm
- Defined in:
- lib/luhnAlgorithmCheck.rb
Instance Attribute Summary collapse
-
#num ⇒ Object
readonly
Returns the value of attribute num.
Instance Method Summary collapse
-
#initialize(num) ⇒ LuhnAlgorithm
constructor
A new instance of LuhnAlgorithm.
- #luhn_valid? ⇒ Boolean
Constructor Details
#initialize(num) ⇒ LuhnAlgorithm
Returns a new instance of LuhnAlgorithm.
4 5 6 |
# File 'lib/luhnAlgorithmCheck.rb', line 4 def initialize(num) @num = num end |
Instance Attribute Details
#num ⇒ Object (readonly)
Returns the value of attribute num.
2 3 4 |
# File 'lib/luhnAlgorithmCheck.rb', line 2 def num @num end |
Instance Method Details
#luhn_valid? ⇒ Boolean
8 9 10 11 12 |
# File 'lib/luhnAlgorithmCheck.rb', line 8 def luhn_valid?() num.scan(/\d/).reverse.each_slice(2) .sum { |i, k = 0| i.to_i + ((k.to_i)*2).digits.sum } .modulo(10).zero? end |