Калькулятор модульной арифметики
Теория и определения
Что такое модульная арифметика?
Модульная арифметика — система вычислений, в которой числа «оборачиваются» после достижения определённого значения (модуля). Аналогия: часы работают по модулю 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. Для КТО добавьте нужное количество сравнений.
Нажмите "Вычислить"
Калькулятор мгновенно выполнит расчёт. Все вычисления происходят в вашем браузере — данные никуда не отправляются.
Изучите решение
Помимо ответа, калькулятор показывает пошаговое решение: каждый шаг алгоритма Евклида, каждую итерацию быстрого возведения в степень, проверку результата.
Часто задаваемые вопросы

Лиана Арифметова
Миссия: Демократизировать сложные расчеты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».
Был ли этот калькулятор полезен?
Отказ от ответственности
Только для информационных целей. Все расчёты, результаты и данные, предоставляемые данным инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.
Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.
Медицинские, финансовые и профессиональные решения должны приниматься исключительно на основании консультации с квалифицированными специалистами — врачом, финансовым советником, инженером или другим профессионалом в соответствующей области. Не используйте результаты данного инструмента как единственное основание для принятия важных решений.
Ограничение ответственности. Авторы и разработчики сервиса не несут никакой ответственности за прямой или косвенный ущерб, возникший в результате использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию и применение полученных результатов.
Похожие инструменты
Калькулятор выходного пособия
Расчёт выходного пособия при сокращении штата или ликвидации по среднему заработку (ТК РФ)
ETL Калькулятор: тайминг, ресурсы, Incremental vs Full, SLA, ошибки
Комплексный калькулятор ETL (Extract-Transform-Load). Оценка времени извлечения, трансформации и загрузки, подбор CPU/RAM/диска, сравнение Incremental и Full Load, расчёт SLA, анализ ошибок и Dead Letter Queue.
Калькулятор объёмного веса (Dimensional Weight)
Рассчитайте объемный вес груза для отправки (DHL, FedEx, UPS). Сравнение с фактическим весом, расчет стоимости доставки.
Калькулятор ЕСХН
Расчёт единого сельскохозяйственного налога: 6% от «доходы минус расходы», проверка права.
Калькулятор шести сигм (Six Sigma)
Расчёты Six Sigma: уровень сигма, DPMO, DMAIC, выборка, FMEA, поток создания ценности
Калькулятор преобразования Фурье (DFT)
Дискретное преобразование Фурье онлайн. Спектральный анализ сигналов, построение спектра, оконные функции.
Калькулятор фотоэффекта (уравнение Эйнштейна)
Расчёт фотоэффекта по уравнению Эйнштейна. Энергия фотона, работа выхода, кинетическая энергия фотоэлектрона.
CSV ↔ JSON ↔ XML конвертер
Онлайн конвертация между форматами CSV, JSON и XML. Настройка разделителей, форматирование и автоопределение формата входных данных.
Калькулятор счёта за электричество
Стоимость по счётчику. Однотарифный, двухтарифный, трёхтарифный учёт. Тарифы по регионам России 2025.
Калькулятор грузоперевозки (вес/объем/стоимость)
Расчет стоимости доставки груза. Учитывает расстояние, вес, объем и дополнительные услуги (страховка, погрузка).
Калькулятор материнского капитала
Размер маткапитала 2025, использование, остаток. Расчёт для ипотеки и образования.
Калькулятор лодки: мощность, расход, налог, ГИМС
Расчёт мощности мотора для лодки, расхода топлива, грузоподъёмности, транспортного налога и необходимости регистрации в ГИМС.
Калькулятор микрозайма (МФО, переплата, ПСК)
Рассчитайте полную стоимость микрозайма: проценты, переплату, ПСК в % годовых, дату возврата. Учёт пролонгации и ограничения 130% по 353-ФЗ.
Калькулятор ставки часа фрилансера
Расчёт минимальной ставки часа по расходам и желаемому доходу. Учёт налогов, загрузки, отпуска.
Зубная нумерация (универсальная ↔ FDI)
Конвертер систем нумерации зубов: универсальная (США, 1-32) и международная (FDI, 11-48). Схемы для взрослых и детей.