После чтения статьи об алгоритме Луна: https://habr.com/ru/articles/745302/ - определения ошибок в числовых последовательностях (например номер платежной карты) решил покапать историю этой задачи, старые статьи.

Про математические основы самого подхода вычисления контрольного числа писать не буду, кому интересно, можно почитать например тут: https://www.researchgate.net/publication/322812787_The_Mathematics_of_Identification_Numbers

В частности в статье отмечалось, что классический алгоритм Луна не выявляет некоторые типы ошибок, например ошибку перестановки чисел 09->90. Есть же и другие и другие распространенные типы ошибок и подходы к их выявлению.

В статье встретилась интересная таблица с результатами исследования - статистика распределения типовых ошибок ввода числовых последовательностей, которой захотелось поделится:

Common pattern errors
Common pattern errors

Возможно, что кому-то это станет полезным при проектировании систем контроля данных или проектирования интерфейсов.

Комментарии (0)