South
African ID numbers are issued in the following way: An example is 890902 5012
083.
The first
six digits indicate the persons date of birth in the format YYMMDD. In the above example the person was
born on 2 September 1989.
The next
four digits (5012) indicate a persons gender. Values from 0001 – 4999 indicate
that the person is female and the values from 5000 – 9999 indicate that the
person is male. In this case the value 5012 indicates that the person is male
and was the 12th person to be registered at the South African Department of Home
Affairs for the person date 2 September
The
remaining digits (083) work as follows:
The ‘0’
indicates the persons citizen status. A '0' indicates the person is a local
resident. A '1' indicates the person is a
foreigner with permanent working permit. A '2' indicates the person is a refugee.
The next
digit ‘8’ in this example has no meaning. The values for this ‘meaningless
digit’ is either 8 or 9.
The last
digit ‘3’ in our example serves a very special purpose. It is called a check
digit. The purpose of this digit is to
help ensure that data capturing clerks at institutions like banks, SARS and so
on do not make a mistake when they have to enter a persons ID number into their
computers.
The check is done as follows:
Click on the image to see enlarged view:
If the products of the digits add up
to a number perfectly divisible by 10 (there is no remainder) then the ID number
was captured correctly. In this example the products of the digits calculated in manner explained adds up to 50 which can be divided by 10 with no remainder.
Students in all the grades (10 - 12) all have enough programming structures to create a program to see if an ID number is correctly entered.
The above method of checking was first done by the IBM engineer Luhn in 1954.
See: http://en.wikipedia.org/wiki/Luhn_algorithm
Students in all the grades (10 - 12) all have enough programming structures to create a program to see if an ID number is correctly entered.
The above method of checking was first done by the IBM engineer Luhn in 1954.
See: http://en.wikipedia.org/wiki/Luhn_algorithm
No comments:
Post a Comment