Калькулятор расширенного алгоритма Евклида
Вычислите НОД двух целых чисел и найдите коэффициенты Безу с помощью расширенного алгоритма Евклида с пошаговой таблицей, обратной подстановкой и модульной инверсией.
Ваш блокировщик рекламы мешает показывать объявления
MiniWebtool бесплатен благодаря рекламе. Если этот инструмент помог, поддержите нас через Premium (без рекламы + быстрее) или добавьте MiniWebtool.com в исключения и обновите страницу.
- Или перейдите на Premium (без рекламы)
- Разрешите показ рекламы на MiniWebtool.com, затем перезагрузите страницу.
О Калькулятор расширенного алгоритма Евклида
Калькулятор расширенного алгоритма Евклида вычисляет наибольший общий делитель (НОД) двух целых чисел и находит коэффициенты Безу — целые числа s и t, удовлетворяющие уравнению НОД(a, b) = s·a + t·b. Помимо вычисления НОД, этот инструмент предоставляет полностью анимированную пошаговую таблицу деления, обратную подстановку и вычисление обратного элемента по модулю, что делает его идеальным для курсов теории чисел, изучения криптографии и соревновательного программирования.
Что такое расширенный алгоритм Евклида?
Расширенный алгоритм Евклида (EEA) — это расширение классического алгоритма Евклида для поиска НОД. В то время как базовый алгоритм находит НОД(a, b) путем последовательного деления, расширенная версия одновременно отслеживает две последовательности целых чисел, которые фиксируют, как каждый остаток может быть выражен в виде линейной комбинации исходных входных данных.
где s и t — коэффициенты Безу (целые числа, возможно, отрицательные)
Как работает алгоритм
Расширенный алгоритм Евклида поддерживает три пары значений — (r, s, t) — на каждом шаге деления:
- Инициализация: r₀ = |a|, r₁ = |b|, s₀ = 1, s₁ = 0, t₀ = 0, t₁ = 1
- На каждом шаге: вычисляется частное q = ⌊rₙ₋₁ / rₙ⌋, затем обновляются rₙ₊₁ = rₙ₋₁ − q·rₙ, sₙ₊₁ = sₙ₋₁ − q·sₙ, tₙ₊₁ = tₙ₋₁ − q·tₙ
- Остановка происходит, когда остаток = 0; предыдущий ненулевой остаток является НОД(a, b)
- Соответствующие значения s и t являются коэффициентами Безу
Пошаговый пример: НОД(252, 105)
| Шаг | Делимое | Делитель | Частное | Остаток | s | t |
|---|---|---|---|---|---|---|
| 1 | 252 | 105 | 2 | 42 | 1 | 0 |
| 2 | 105 | 42 | 2 | 21 | 0 | 1 |
| 3 | 42 | 21 | 2 | 0 | 1 | -2 |
Результат: НОД(252, 105) = 21, с тождеством Безу: 21 = 1 × 252 + (−2) × 105. Попробуйте сами с помощью калькулятора выше, чтобы получить точные коэффициенты.
Применение расширенного алгоритма Евклида
1. Обратный элемент по модулю (Криптография)
Наиболее важным применением является вычисление обратных элементов по модулю. Если НОД(a, m) = 1, то коэффициент Безу s удовлетворяет условию:
Обратные элементы по модулю необходимы в шифровании RSA (вычисление экспоненты закрытого ключа d), обмене ключами Диффи-Хеллмана и криптографии на эллиптических кривых.
2. Решение линейных диофантовых уравнений
Уравнение ax + by = c имеет решения в целых числах тогда и только тогда, когда НОД(a, b) делит c. Если это так, то частное решение имеет вид x₀ = s·(c/d), y₀ = t·(c/d), где d = НОД(a, b), а s, t — коэффициенты Безу.
3. Китайская теорема об остатках
Расширенный алгоритм Евклида используется в конструктивном доказательстве и вычислении китайской теоремы об остатках — поиске x, такого что x ≡ a₁ (mod m₁) и x ≡ a₂ (mod m₂), путем вычисления модульных обратных величин модулей.
4. Сокращение дробей и НОК
НОД(a, b) = 1 подтверждает, что дробь a/b уже несократима. НОК вычисляется как нок(a, b) = |a·b| / НОД(a, b).
Коэффициенты Безу не уникальны
Коэффициенты Безу s and t не являются единственными. Если (s, t) — одно решение, то (s + k·(b/d), t − k·(a/d)) также является решением для любого целого k, где d = НОД(a, b). Расширенный алгоритм Евклида возвращает решение, где |s| ≤ |b/d| и |t| ≤ |a/d|.
Временная сложность
Расширенный алгоритм Евклида выполняется за O(log min(a, b)) итераций — так же, как и базовый алгоритм Евклида. Согласно теореме Ламе, количество шагов никогда не превышает 5-кратного количества десятичных цифр меньшего из входных чисел. Это делает его чрезвычайно эффективным даже для огромных целых чисел, используемых в криптографии.
Часто задаваемые вопросы
Что такое расширенный алгоритм Евклида?
Это расширение алгоритма Евклида для поиска НОД, которое также вычисляет коэффициенты Безу s и t, удовлетворяющие уравнению НОД(a, b) = s·a + t·b. Он отслеживает, как каждый остаток может быть представлен в виде линейной комбинации a и b в процессе деления.
Что такое коэффициенты Безу?
Коэффициенты Безу — это целые числа s и t, существование которых гарантируется тождеством Безу (теорема в теории чисел). Они удовлетворяют равенству НОД(a, b) = s·a + t·b и эффективно вычисляются расширенным алгоритмом Евклида. Они применяются при вычислении обратных элементов по модулю, решении диофантовых уравнений и в китайской теореме об остатках.
Как найти обратный элемент по модулю с помощью расширенного алгоритма Евклида?
Если НОД(a, b) = 1 (a и b взаимно просты), коэффициент Безу s удовлетворяет условию s·a ≡ 1 (mod b). Обратным элементом для a по модулю b является s mod b (приведенное к положительному значению). Этот калькулятор выводит этот результат напрямую.
Когда обратный элемент по модулю не существует?
Обратный элемент для a по модулю m существует тогда и только тогда, когда НОД(a, m) = 1. Если НОД(a, m) > 1, ни одно целое число x не удовлетворяет условию a·x ≡ 1 (mod m).
Какова временная сложность расширенного алгоритма Евклида?
O(log min(a, b)) делений, как и в базовом алгоритме Евклида. По теореме Ламе количество шагов ограничено 5-кратным числом знаков в десятичной записи меньшего числа, что делает алгоритм очень быстрым.
Дополнительные ресурсы
Ссылайтесь на этот контент, страницу или инструмент так:
"Калькулятор расширенного алгоритма Евклида" на сайте https://ru.miniWebtool.com// от MiniWebtool, https://MiniWebtool.com/
командой miniwebtool. Обновлено: 18 февраля 2026 г.
Вы также можете попробовать наш AI Решатель Математических Задач GPT, чтобы решить ваши математические проблемы с помощью вопросов и ответов на естественном языке.