私は次の機能を持っています:
def valid_credit_card?(number)
digits = number.scan(/./).map(&:to_i)
check = digits.pop
sum = digits.reverse.each_slice(2).map do |x, y|
[(x * 2).divmod(10), y]
end.flatten.inject(:+)
(10 - sum % 10) == check
end
しかし、何らかの理由で、次のエラーメッセージが表示され続けます。
nil can't be coerced into Fixnum
そして、何らかの理由で、エラーがスローされる理由を理解できません。なぜこれが起こっているのでしょうか?