TGViewer
Python Portal Python Portal @pythonportal · 50.2K subscribers
Post #5198 9.18K
Алгоритм Луна, созданный Хансом Петером Луном в 50-х, это математический способ проверить, корректно ли сформирован номер карты перед тем, как система его обработает. Он не проверяет баланс и не подтверждает реальное существование аккаунта, а просто ловит опечатки и отсеивает номера, которые в принципе не могут быть валидными.

Зачем он нужен:

Быстро понять, что номер введён с ошибкой

Избежать лишних запросов в базу

Снизить нагрузку на сервис и количество фейлов при операций

По сути, Луна — это быстрый фильтр, который не даёт системе тратить ресурсы на заведомо невозможный номер.

Пример с вымышленным номером:

4539 1488 0343 6467

Переворачиваем цифры справа налево
7 6 4 6 3 4 3 0 8 8 4 1 9 3 5 4

Удваиваем каждую вторую цифру:

Первая цифра (7) остаётся как есть.
Вторая (6) удваивается и становится 12.
Вся последовательность получается такой:

7, 12, 4, 12, 3, 8, 3, 0, 8, 16, 4, 2, 9, 6, 5, 8

Все значения больше 9 уменьшаем на 9
(12 → 3, 12 → 3, 16 → 7)

Итоговый ряд:
7, 3, 4, 3, 3, 8, 3, 0, 8, 7, 4, 2, 9, 6, 5, 8

Складываем все числа
Сумма: 80

Проверка

Алгоритм Луна проходит, потому что сумма кратна 10 (заканчивается на 0).

Итог

Алгоритм Луна применяют не только в банковских картах, но и в любых идентификаторах, где важно быстро ловить ошибки. Его задача убедиться, что номер правильно сформирован перед обработкой, чтобы избежать лишних ошибок и не тратить ресурсы впустую.

👉 @PythonPortal
  • 🔥 77
  • ❤ 18
  • 🤔 7
  • 👍 5
  • 💊 2
More from @pythonportal
  1. Oct 11, 2026Вышла долгожданная новая версия Python — 3.15 🐍 В неё вошли 5643 коммита от тысячи разраб…
  2. Oct 10, 2026Сейчас в сфере ИИ есть два карьерных пути: Первый — разработчик, который умеет создавать п…
  3. Oct 10, 2026Скачайте 10 книг по Python БЕСПЛАТНО: 1. Think Python — O’Reilly https://t.co/X7y3pX68IW 2…
  4. Oct 9, 2026Один из главных моментов, когда я по-настоящему понял, как работают трансформеры: «Переста…
  5. Oct 9, 2026Google выпустила EmbeddingGemma 2. Это первая открытая мультимодальная модель для эмбеддин…
  6. Oct 8, 2026Тестируйте торговые стратегии на основе машинного обучения на исторических рыночных данных…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →