Modulus 11 detects single digit errors, single transpositions,
and double transpositions. Unlike other check digit systems, it
is based on a weighted checking factor for each digit in the basic
number. The modulus 11 check digit is obtained as follows:
Example |
|
Assume a basic number | 5 1 6 1 9 2 8 7 2 |
Checking factors | 4 3 2 7 6 5 4 3 2 |
Add the products | 20+3+12+7+54+10+32+21+4=163 |
Subtract remainder from 11 | 11-9=2 |
Check digit = | 2 |
Self-checking number | 5161928722 |
If a check digit is generated using modulus 11 calculations
and the result is 10, the check digit cannot be used and an error
is returned. Modulus 11 check digits are the remainder from dividing
the product of the calculations by 11 (see example above). Thus,
if check digits are being generated for a continuous series of numbers,
every eleventh number must be skipped to avoid this error.
If the product generated through the modulus 11 calculations
is evenly divisible by 11 (no remainder), the resulting check digit
is 11. In this case, the digit 0 is appended to the basic number.
To summarize, if the calculated check digit is 10, an error
is returned; if the calculated check digit is 11, a zero is appended
to the basic number.
When you attempt to add a modulus 11 check digit that evaluates
to 10, the reformatter issues the message: "Check digit is invalid
for modulus 11 calculation".
If ENTRY checks a field according to the FORMSPEC statement CDIGIT 11 and that field contains a value with a check digit
that evaluates to 10, the same message is issued.