MDC (Algoritmo de Euclides)
Calcula MDC (máximo divisor comum) de dois inteiros usando algoritmo de Euclides.
MDC(a,b)
—
Algoritmo de Euclides para o MDC
O algoritmo de Euclides chega ao mdc(a, b) aplicando a identidade mdc(a, b) = mdc(b, a mod b) vez após vez até que b = 0. O valor de a que sobra nesse ponto é o MDC. Ele aparece nos Elementos de Euclides (~300 a.C.), Livro VII, o que faz dele um dos algoritmos não-triviais mais antigos que ainda estão em uso. A complexidade é O(log min(a, b)), e o teorema de Lamé mostra que o pior caso surge quando as entradas são números de Fibonacci consecutivos.
Veja uma execução: mdc(48, 18) → mdc(18, 12) → mdc(12, 6) → mdc(6, 0) = 6. Há ainda o algoritmo estendido de Euclides, que entrega de quebra os coeficientes de Bézout x, y com a·x + b·y = mdc(a, b). É daí que sai o cálculo de inversos modulares.
Aplicações
- Criptografia: o inverso modular por trás da geração de chaves RSA e do ECDSA vem do Euclides estendido.
- Simplificação de frações: divida os dois termos de
a/bpormdc(a, b)e você cai na forma irredutível. - Equações diofantinas:
ax + by = csó tem solução inteira quandomdc(a, b)dividec. - Programação competitiva: é a escolha de sempre em problemas de teoria dos números.
Perguntas frequentes
Quanto vale mdc(a, 0)? Por convenção, mdc(a, 0) = |a|, e é justamente esse o caso-base da recursão.
Funciona com números negativos? Sim. Em geral as implementações tomam o módulo dos valores antes, já que o MDC é definido como não-negativo.
E para mais de dois números? Aproveite a associatividade e encadeie: mdc(a, b, c) = mdc(mdc(a, b), c).
Ferramentas Relacionadas
Calculadora de MDC
Calcule o Máximo Divisor Comum (MDC) de dois ou mais números pelo algoritmo de Euclides. Resultado instantâneo no navegador.
MDC com Coeficientes de Bézout
Calcula o MDC(a,b) e exibe os coeficientes x,y tais que a·x + b·y = mdc(a,b). Usado em criptografia e teoria dos números.
MDC de Múltiplos Números
Calcule o MDC (máximo divisor comum) de uma lista de números inteiros de uma só vez. Informe os valores separados por vírgula e veja o resultado na hora.
Os resultados desta ferramenta têm caráter apenas informativo e educativo e não constituem aconselhamento profissional, financeiro, médico, jurídico, tributário ou contábil. Confirme decisões importantes com um profissional qualificado e fontes oficiais.