Apr. 28th, 2016

gul_kiev: (buddha eyes)
Недавно набрёл на алгоритм Луна - это контрольная сумма, использующаяся для проверки номеров кредитных карточек. Если вы вместо номера кредитки введёте случайную последовательность из 16 цифр, то, скорее всего, вам ответят, что это некорректный номер, без запросов к банку.
Алгоритм этот настолько прост, что доступен даже для человека. Это почти сумма цифр по модулю 10, но с небольшой модификацией: каждая вторая цифра удваивается, и если получается больше девяти, то вычитается 9. Сумма всех цифр карточки, каждая вторая из которых модифицирована таким способом, должна делиться на 10. Изменение любой одной цифры приводит к несовпадению контрольной суммы, и перестановка почти любых двух соседних цифр тоже даёт некорректный номер.

Первая мысль - это же задача уровня старшеклассника. А написано пафосно: "разработан сотрудником IBM", "запатентован", как будто это какое-то научное открытие. Я понимаю, можно давать имя и патентовать правильные математические алгоритмы вроде LZW или кодов Хемминга, но тут-то? Алгоритм Верхуффа - уже хорошо, к тому же, он в отличие от алгоритма Луна даёт правильное решение поставленной задачи (защититься от искажения любой одной цифры и от перестановки двух соседних цифр).

Настолько просто, что доступно даже для человека. Я немного подвис на этой фразе.
Управление этим самолётом настолько просто, что доступно даже для человека.
Этот метод диагностики болезней настолько прост, что доступен даже для человека.

Человек уж совсем тупым тормозом считается по сравнению с машинами. Заслуженно, наверное?

September 2017

S M T W T F S
     12
3456789
10111213 141516
17181920212223
24252627282930

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 20th, 2017 09:06 am
Powered by Dreamwidth Studios