Thread Prüfziffer nach ISO 13616 berechnen (2 answers)
Opened by bianca at 2012-12-05 14:22

FIFO
 2012-12-05 16:54
#163956 #163956
User since
2005-06-01
469 Artikel
BenutzerIn

user image
Ich hab da lange nichts mehr mit zu tun gehabt, aber musst Du nicht noch zwei Nullen anhängen?

Code (perl): (dl )
1
2
3
4
5
6
my $wert = Math::BigFloat->new(
    $id
   .(ord(substr($land,0,1))-55)
   .(ord(substr($land,1,1))-55)
   .'00'
);


Siehe auch hier

Nachtrag: Der Modulo(97) ist (ausgerechnet!) bei der offiziellen Testziffer mit und ohne '00' gleich:
Code (perl): (dl )
1
2
3
4
5
6
7
my $wert1 = Math::BigFloat->new('9999999999131400');
my $wert2 = Math::BigFloat->new('99999999991314');
print sprintf(
    "%02d\n%02d\n", 
    $wert1->bmod(97), 
    $wert2->bmod(97)
);


Editiert von FIFO: Formatierung, Link
Last edited: 2012-12-05 17:24:52 +0100 (CET)
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"

View full thread Prüfziffer nach ISO 13616 berechnen