Apr. 28th, 2016

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

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

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

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

May 2017

S M T W T F S
 123456
78910 111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 28th, 2017 04:40 am
Powered by Dreamwidth Studios