Sha256: a5be5fd6b92c87d7dcef560c2d176b7ce5a58a268de4f823a5abbed26e0b59b9

Contents?: true

Size: 366 Bytes

Versions: 5

Compression:

Stored size: 366 Bytes

Contents

# frozen_string_literal: true

class Valvat
  module Checksum
    class HR < Base
      def check_digit
        product = 10
        sum     = 0

        figures.each do |figure|
          sum = (figure + product) % 10
          sum = 10 if sum.zero?
          product = (2 * sum) % 11
        end

        (10 - (product - 1) % 10) % 10
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
valvat-1.1.4 lib/valvat/checksum/hr.rb
valvat-1.1.3 lib/valvat/checksum/hr.rb
valvat-1.1.2 lib/valvat/checksum/hr.rb
valvat-1.1.1 lib/valvat/checksum/hr.rb
valvat-1.1.0 lib/valvat/checksum/hr.rb