Sha256: fb5678a48c4cc48fb723f0d6f774aa5e16fb0f54f3040b18709041f80a72f4f4
Contents?: true
Size: 355 Bytes
Versions: 105
Compression:
Stored size: 355 Bytes
Contents
unit module Luhn:ver<1>; sub is-luhn-valid ($input is copy) is export { $input ~~ s:g/\s+//; return False if $input.chars < 2 || $input ~~ /\D/; my @num = $input.split('', :skip-empty); @num.unshift: 0 if @num % 2; my $sum; for @num -> $a, $b { $sum += $a * 2; $sum -= 9 if $a * 2 > 9; $sum += $b; } return ($sum %% 10).so; }
Version data entries
105 entries across 105 versions & 1 rubygems