close

正確傳回1
錯誤傳回0

my %letterw;
my @w=(10, 11, 12, 13, 14, 15, 16, 17, 34, 18, 19, 20, 21, 22, 35, 23, 24, 25, 26, 27, 28, 29, 32, 30, 31, 33);
my $no;
foreach $ele('A'..'Z'){
$letterw{$ele}= $w[$no];
$no++;
}

sub checkid{
my $id=shift;
my $sum=0;
if(length($id) ne 10){return 0;}
if($id !~ /^\w\d\d\d\d\d\d\d\d\d$/){return 0;}
my $first=substr($id, 0, 1);
$sum= $letterw{$first} / 10 + ($letterw{$first} % 10)*9 +
substr($id, 1, 1) * 8 +
substr($id, 2, 1) * 7 +
substr($id, 3, 1) * 6 +
substr($id, 4, 1) * 5 +
substr($id, 5, 1) * 4 +
substr($id, 6, 1) * 3 +
substr($id, 7, 1) * 2 +
substr($id, 8, 1) * 1 +
substr($id, 9, 1) * 1;
if(($sum % 10)eq 0){return 1;}
return 0;
}

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 rgyyhawu 的頭像
    rgyyhawu

    rgyyhawu的部落格

    rgyyhawu 發表在 痞客邦 留言(0) 人氣()