Calculadora de Máximo Divisor Comum (MDC) Online Grátis
O máximo divisor comum de 1071 e 462 é 21, obtido em três passos do método de Euclides, sem fatorar nenhum dos dois números. Digite dois inteiros, inclusive negativos ou um zero, e use o resultado para simplificar 462/1071 em 22/51. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- A
- 1.071
- B
- 462
- Gcd
- 21
Os sinais são ignorados, um único zero é tratado pela regra gcd(n, 0) = |n|, e o único caso rejeitado é o matematicamente indefinido gcd(0, 0).
O que é o máximo divisor comum
O máximo divisor comum de dois inteiros é o maior número inteiro positivo que divide os dois exatamente. Para 1071 e 462 é 21, pois 1071 = 21 × 51 e 462 = 21 × 22, e nenhum inteiro maior divide ambos. Quando o resultado é 1, os dois números são chamados de coprimos: não compartilham nenhum fator.
O conceito é antigo — está no coração dos Elementos de Euclides — e ainda é a forma mais rápida de responder perguntas muito práticas: reduzir uma fração aos termos mínimos, verificar se dois processos periódicos vão se alinhar ou simplificar uma razão antes de exibi-la. Nunca aproxima nem arredonda: entra inteiro, sai inteiro exato.
Como o algoritmo de Euclides calcula
A implementação é a versão de Euclides sem subtrações: substitua repetidamente o número maior pelo resto da divisão do maior pelo menor, até o resto ser zero; o último resto não nulo é a resposta. Para 1071 e 462, temos 1071 mod 462 = 147, depois 462 mod 147 = 21, depois 147 mod 21 = 0, então o resultado é 21.
O laço roda em O(log min(a, b)) iterações, o que significa que até números próximos ao limite de inteiro seguro terminam em poucos passos, sem fatoração e sem ponto flutuante. Os sinais são removidos primeiro porque a divisibilidade não depende deles, então gcd(-12, 18) é 6.
Onde ele aparece no trabalho real
A redução de frações é o uso canônico: divida numerador e denominador pelo gcd e a fração fica em termos mínimos, que é o que motores de cobrança, ajustes de receitas e exibições de proporção precisam antes de apresentar um número. Ele também sustenta verificações de coprimalidade — um gcd igual a 1 é o teste — e a maquinaria do teorema chinês do resto e do inverso modular usada em criptografia, onde o gcd é o primeiro passo do algoritmo de Euclides estendido.
O recurso roda na nossa edge sem armazenar nada: os dois inteiros chegam, o divisor sai e nenhum registro dos seus números é mantido.
Casos de uso
Reduzir frações aos termos mínimos
Divida numerador e denominador pelo gcd antes de armazenar ou exibir uma razão, para que 462/1071 vire 22/51.
Verificar se dois números são coprimos
Um resultado 1 significa que o par não compartilha nenhum fator, pré-condição de muitas construções de escalonamento, hashing e criptografia.
Alinhar processos periódicos
Combinado com o lcm, o gcd mostra quando dois ciclos de comprimentos diferentes coincidem e como dividir o trabalho em lotes iguais.
Perguntas frequentes
Quanto custa?
Também é grátis executar no seu navegador nesta página, com exatamente o mesmo código.
As entradas podem ser negativas?
Sim. Os sinais são ignorados porque a divisibilidade não depende deles: gcd(-12, 18) retorna 6, sempre como inteiro positivo.
O que acontece com zero?
gcd(n, 0) retorna |n| para qualquer n não nulo.
Qual o tamanho máximo dos inteiros?
Qualquer inteiro seguro em termos de JavaScript, até 2^53 − 1 em magnitude. Valores fora dessa faixa são rejeitados em vez de calculados com imprecisão.
Qual algoritmo é usado?
O algoritmo de Euclides: passos repetidos de resto até o resto ser zero. Roda em O(log min(a, b)) iterações, sem fatoração e sem ponto flutuante.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/math/gcd \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":1071,"b":462}'const res = await fetch("https://api.kit.forhosting.com/math/gcd", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 1071,
"b": 462
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/gcd",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 1071,
"b": 462
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/gcd", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":1071,"b":462}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":1071,"b":462}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/gcd", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"a": 1071,
"b": 462
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.gcd",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
A API de máximo divisor comum recebe dois inteiros e devolve o maior inteiro positivo que divide ambos sem resto, calculado com o clássico algoritmo de Euclides. É uma ferramenta pequena e exata: o mesmo código determinístico roda grátis no seu navegador e no endpoint pago, então o número que você vê ao testar é o número que seu pipeline receberá em produção.
O que é o máximo divisor comum
Este endpoint recebe os dois inteiros nos campos a e b, aceita qualquer sinal e devolve um objeto com o divisor positivo.
Como o algoritmo de Euclides calcula
Os casos de borda seguem a convenção padrão: gcd(n, 0) = |n| para qualquer n não nulo, enquanto gcd(0, 0) é indefinido e é rejeitado com um erro invalid_input em vez de um zero silencioso e errado.
Onde ele aparece no trabalho real
Você pode testar grátis nesta página com o mesmo código que atende a API, e só paga US$ 0,002 por requisição ao chamar a partir dos seus próprios sistemas, o que o torna barato o bastante para embutir em uma etapa de limpeza de dados que processa milhões de pares.