Калькулятор модульной арифметики
Теория и определения
Что такое модульная арифметика?
Модульная арифметика — система вычислений, в которой числа «оборачиваются» после достижения определённого значения (модуля). Аналогия: часы работают по модулю 12 — после 12 счёт начинается заново.
Сравнения по модулю
Два числа a и b сравнимы по модулю m (пишется a ≡ b (mod m)), если их разность делится на m. Это отношение эквивалентности, разбивающее все целые числа на m классов вычетов.
Применения
Модульная арифметика — фундамент криптографии (RSA, Диффи-Хеллман), хеш-функций, контрольных сумм (ISBN, банковские карты), коррекции ошибок, генерации псевдослучайных чисел и теории кодирования.
Где это используется?
Модульная арифметика выходит далеко за пределы учебников — она лежит в основе технологий, которыми мы пользуемся каждый день.
Криптография RSA
Шифрование с открытым ключом основано на возведении в степень по модулю произведения двух больших простых чисел. Безопасность RSA опирается на сложность факторизации.
Хеш-функции
Хеширование данных использует операции mod для отображения входа произвольного размера в фиксированный диапазон. Применяется в хеш-таблицах, проверке целостности, blockchain.
Контрольные цифры
Алгоритм Луна (банковские карты), ISBN, ИНН, штрих-коды, СНИЛС — все проверяют корректность с помощью остатка от деления.
Циклические структуры
Кольцевые буферы, round-robin планировщики, карусели в UI, дни недели — любая циклическая структура работает через mod.
Расписания и календари
Определение дня недели, расчёт високосных годов, периодические задачи (cron), расписание смен — всё это модульная арифметика в быту.
Теория чисел
Малая теорема Ферма, теорема Эйлера, квадратичные вычеты, символ Лежандра, дискретный логарифм — фундамент математики и криптоанализа.
Формулы и алгоритмы
Математический аппарат, реализованный в калькуляторе.
Операции по модулю
Малая теорема Ферма
Теорема Эйлера
Расширенный алгоритм Евклида
def mod_pow(base, exp, mod):
"""
Быстрое возведение в степень по модулю.
Сложность: O(log exp)
"""
result = 1
base = base % mod
while exp > 0:
if exp % 2 == 1:
result = (result * base) % mod
exp = exp >> 1 # exp //= 2
base = (base * base) % mod
return result
def mod_inverse(a, m):
"""
Обратный элемент через расширенный
алгоритм Евклида.
"""
g, x, _ = extended_gcd(a, m)
if g != 1:
raise ValueError("Обратного не существует")
return x % mПродвинутые темы
RАлгоритм RSA
RSA — асимметричная криптосистема, безопасность которой основана на сложности факторизации больших чисел.
- Выбрать два больших простых числа p и q
- Вычислить n = p × q и φ(n) = (p-1)(q-1)
- Выбрать e взаимно простое с φ(n)
- Найти d = e^(-1) mod φ(n)
- Шифрование: c = m^e mod n
- Дешифрование: m = c^d mod n
Ключи RSA
Открытый: (e, n)
Закрытый: (d, n)
e × d ≡ 1 (mod φ(n))
≡Китайская теорема об остатках (КТО)
Если m_1, m_2, ..., m_k попарно взаимно просты, то система сравнений:
x ≡ a_2 (mod m_2)
...
x ≡ a_k (mod m_k)
имеет единственное решение по модулю M = m_1 × m_2 × ... × m_k.
Применения КТО:
- Ускорение RSA-дешифрования (в 4 раза быстрее)
- Секретное разделение (схема Шамира)
- Вычисления с большими числами через малые модули
- Параллельные вычисления в компьютерной алгебре
φТеорема Эйлера
Обобщение малой теоремы Ферма: для любого a, взаимно простого с m, выполняется a^φ(m) ≡ 1 (mod m). Функция Эйлера φ(n) считает количество чисел от 1 до n, взаимно простых с n.
logДискретный логарифм
Задача нахождения x из уравнения a^x ≡ b (mod p). Считается вычислительно трудной и лежит в основе протоколов Диффи-Хеллмана, ElGamal и эллиптической криптографии (ECDSA).
Практические советы
Приводите к модулю заранее
При умножении больших чисел берите остаток на каждом шаге. Это предотвращает переполнение и ускоряет вычисления: (a * b) mod m = ((a mod m) * (b mod m)) mod m.
Используйте быстрое возведение в степень
Наивный подход a^b имеет сложность O(b), бинарное возведение в степень (binary exponentiation) — O(log b). Разница колоссальна для криптографических размеров.
Проверяйте взаимную простоту
Обратный элемент a^(-1) mod m существует тогда и только тогда, когда gcd(a, m) = 1. Всегда проверяйте это условие перед вычислением.
Отрицательные остатки
В программировании оператор % может давать отрицательный результат. Для корректного остатка используйте формулу: ((a % m) + m) % m.
BigInt для криптографии
RSA использует числа длиной 2048-4096 бит. Стандартные типы данных не справятся — используйте BigInt в JavaScript или GMP в C/C++.
Тест простоты для генерации ключей
Для RSA нужны большие простые числа. Тест Миллера-Рабина с 20+ раундами даёт вероятность ошибки менее 4^(-20) ≈ 10^(-12).
Как пользоваться калькулятором
Выберите вкладку
Определите тип задачи: базовые операции, обратный элемент, возведение в степень, КТО, тест простоты или НОД/расширенный Евклид.
Введите числа
Укажите необходимые параметры. Поддерживаются произвольно большие целые числа благодаря BigInt. Для КТО добавьте нужное количество сравнений.
Нажмите "Вычислить"
Калькулятор мгновенно выполнит расчёт. Все вычисления происходят в вашем браузере — данные никуда не отправляются.
Изучите решение
Помимо ответа, калькулятор показывает пошаговое решение: каждый шаг алгоритма Евклида, каждую итерацию быстрого возведения в степень, проверку результата.
Часто задаваемые вопросы

Лиана Арифметова
Миссия: Демократизировать сложные расчеты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».
Отказ от ответственности
Только для информационных целей. Все расчёты, результаты и данные, предоставляемые данным инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.
Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.
Медицинские, финансовые и профессиональные решения должны приниматься исключительно на основании консультации с квалифицированными специалистами — врачом, финансовым советником, инженером или другим профессионалом в соответствующей области. Не используйте результаты данного инструмента как единственное основание для принятия важных решений.
Ограничение ответственности. Авторы и разработчики сервиса не несут никакой ответственности за прямой или косвенный ущерб, возникший в результате использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию и применение полученных результатов.
Похожие инструменты
Калькулятор стипендии для студентов России
Расчёт академической и социальной стипендии, именных стипендий (Президента РФ — 22 800 руб.) и бюджета студента по ФЗ №273 и постановлениям Правительства.
Калькулятор ж/д перевозок (РЖД)
Расчёт стоимости железнодорожных грузоперевозок: тарифы РЖД, типы вагонов, контейнеры, сроки.
Калькулятор похода: снаряжение, питание, маршрут, бюджет
Калькулятор для походов и кемпинга. Список снаряжения, расчёт питания, планирование маршрута и бюджет похода.
Калькулятор мощности котла отопления
Расчёт мощности отопительного котла по площади дома, утеплению и климатическому району. Расход газа, электричества, пеллет.
Калькулятор кредиторской задолженности
Рассчитайте оборачиваемость кредиторской задолженности, DPO, эффективность использования торгового кредита и скидки за раннюю оплату.
Калькулятор совместимости лекарств
Проверка взаимодействия лекарственных препаратов. Опасные и нежелательные комбинации.
Калькулятор аквакультуры и рыбоводства
Расчёт посадочной плотности рыбы, норм кормления, водообмена УЗВ. Форель, карп, осётр. По нормам ВНИИПРХ и ФЗ №148 об аквакультуре.
Калькулятор исполнительного сбора
Расчёт исполнительного сбора ФССП: 7% от суммы взыскания, минимум 1000/10000 руб. Ст. 112 ФЗ-229 «Об исполнительном производстве».
Генератор Open Graph тегов
Создание OG-тегов для корректного отображения ссылок в VK, Telegram, Facebook и Twitter. Предпросмотр карточки и готовый HTML-код.
Удалитель дублирующих строк
Удаление повторяющихся строк из списка. Поиск уникальных, показ только дубликатов, настройки сравнения.
Калькулятор удобрений NPK
Рассчитайте нормы внесения удобрений для сельскохозяйственных культур. Расчёт NPK баланса, подбор видов удобрений и стоимость применения.
Калькулятор акустики помещения (RT60)
Время реверберации RT60 по формуле Сабина. Подбор акустической обработки для студии и кинотеатра.
NLP Калькулятор: токенизация, TF-IDF, BLEU, перплексия
Комплексный калькулятор обработки естественного языка (NLP). Токенизация текста (GPT, BERT, T5), сходство текстов (Jaccard, косинусное, Левенштейн), TF-IDF, оценки BLEU/ROUGE, параметры эмбеддингов, перплексия и энтропия.
Калькулятор эмбриологии
Оценка эмбрионов по Гарднеру, гестационный возраст, прогноз ЭКО, рост фолликулов, морфология сперматозоидов, криоконсервация.
Калькулятор отмостки
Расчёт отмостки вокруг дома: площадь, объём бетона, щебень, песок, арматурная сетка, опалубка. Ориентировочная смета материалов.