Алгоритм Луна

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Dmitry85 (обсуждение | вклад) в 11:11, 27 июля 2007. Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Алгоритм Луна (Luhn)

Используется для проверки номеров пластиковых карт.

1. Начиная со второго числа справа через 1 (т.е. 2,4,6,8,10...) делается проверка: если х*2>9 то из произведения вычитается 9, если х*2<9 то х оставляем без изменения.

например:

4  5  6  1     2  6  1  2     1  2  3  4     5  4  6  4
8     12       4     2        2     6        10    12
8     3        4     2        2     6        1     3

2. Затем все числа складываются.

8+5+3+1 + 4+6+2+2 + 2+2+6+4 + 1+4+3+4 = 57

3. Полученная сумма должна быть кратна 10 (40,50,60,70...)

В примере: последнее число это контрольная цифра, для того чтобы номер был верен в соответствии с алгоритмом Луна, контрольная цифра должна быть равна 7.

4  5  6  1     2  6  1  2     1  2  3  4     5  4  6  7
8     12       4     2        2     6        10    12
8     3        4     2        2     6        1     3
8+5+3+1 + 4+6+2+2 + 2+2+6+4 + 1+4+3+7 = 60

Источники инфрмации