Berechnung der Prüfziffer für interne Zuordnungsdaten (Kunden- Referenznummer)
(nach DIN ISO 7064, MOD 11, 10)
1. Rechengang
Die internen Zuordnungsdaten (Kunden- Referenznummer) bestehen aus 12 Ziffern und einer einstelligen Prüfziffer, bilden also eine 13stellige Zahlenkette. Diese Kette wird Zeichen für Zeichen von links nach rechts verarbeitet.
Mit dem Index j = 1…n (wobei n die Anzahl der Zeichen in der Kette einschließlich Prüfzeichen ist) und mit dem Anfangswert P1 = M für j = 1 berechnet man
Sj = PjI(M+1) + a(n-j+1)P(j+1) = SjIIM *2
Dabei ist
IIM der Rest nach Division durch M; falls dieser gleich Null ist, ist statt dessen Wert M einzusetzen. I(M+1) der Rest nach Division durch (M+1); hier wird der Rest niemals gleich Null. a(n-j+1) der Zeichenwert.
Bei der Prüfung gilt die Kette als richtig, wenn Sn = 1 (mod M) ist.
Zur Berechnung des Prüfzeichens wird a1 so gewählt, daß PnI(M+1) + a1 = 1 (mod M) ist. Mit dem für a1 gefundenen Wert werden die internen Zuordnungsdaten (Kunden- Referenznummer) ergänzt.
2. Beispiel
Die internen Zuordnungsdaten (Kunden- Referenznummer) lauten 100845456115. Sie sind am rechten Ende zu ergänzen durch die Prüfziffer nach DIN ISO 7064, MOD 11, 10.
Rechnung
Schritt |
Über- tragenes Produkt |
nächster |
Zwischen- summe |
Zwischen- summe (mod 10) * 2 = Produkt |
Produkt |
|
j |
PjI11 | + | a(n-j+1) | =Sj | SjII * 2 = P(j+1) |
P(j+1)I11 |
1 | 2 | 3 | 4 | |||
1 | 10 | + | 1 | = 11 | 1 * 2 = 2 | 2 |
2 | 2 | + | 0 | = 2 | 2 * 2 = 4 | 4 |
3 | 4 | + | 0 | = 4 | 4 * 2 = 8 | 8 |
4 | 8 | + | 8 | = 16 | 6 * 2 = 12 | 1 |
5 | 1 | + | 4 | = 5 | 5 * 2 = 10 | 10 |
6 | 10 | + | 5 | = 15 | 5 * 2 = 10 | 10 |
7 | 10 | + | 4 | = 14 | 4 * 2 = 8 | 8 |
8 | 8 | + | 5 | = 13 | 3 * 2 = 6 | 6 |
9 | 6 | + | 6 | = 12 | 2 * 2 = 4 | 4 |
10 | 4 | + | 1 | = 5 | 5 * 2 = 10 | 10 |
11 | 10 | + | 1 | = 11 | 1 * 2 = 2 | 2 |
12 | 2 | + | 5 | = 7 | 7 * 2 = 14 | 3 |
13 | 3 | + | 8 | = 1 | ||
(mod 10) |
Die gesuchte Prüfziffer ist 8.
Erläuterungen
Der Ausgangswert, auf den im 1. Schritt der 1. Zeichenwert addiert wird, ist immer 10.
Zwischensumme (mod 10): | Das Ergebnis der Rechenoperation in Sp. „2“ wird durch 10 dividiert; der Divisionsrest (Einerstelle des Ergebnisses) ergibt die Zwischensumme SjII10. Ist dieser Wert = 0, ist statt dessen der Wert 10 zu setzen. |
Produkt (mod 11): | Das Produkt in Sp. „3“ wird durch 11 dividiert; der Divisions- rest ergibt sich im nächsten Berechnungsschritt. |
Prüfziffer: | Im letzten Berechnungsschritt ist der Übertrag auf den Wert 11 (= 1 [mod 10]) zu ergänzen. Der gefundenen Zeichenwert ist die Prüfziffer. Ist der Übertrag aus Schritt 12 jedoch = 1, so ist die Prüfziffer = 0. |