MDC e MMC de vários números grátis
Para doze, dezoito e vinte e quatro, o máximo divisor comum é 6 e o mínimo múltiplo comum é 72, ambos a partir de uma única lista. Digite dois ou mais inteiros diferentes de zero e receba os dois resultados juntos. 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
- Números
- 12, 18, 24
- Gcd
- 6
- Lcm
- 72
A calculadora de MDC e MMC recebe uma lista de inteiros e devolve o máximo divisor comum e o mínimo múltiplo comum do conjunto inteiro. Usa o algoritmo de Euclides para o MDC e reduz o MMC par a par como |a/g|*b para os produtos intermediários crescerem menos.
O que MDC e MMC significam juntos
O máximo divisor comum é o maior inteiro positivo que divide todos os números da lista sem resto. O mínimo múltiplo comum é o menor inteiro positivo que é múltiplo de todos. Para dois valores vale a identidade clássica mdc(a,b)*mmc(a,b)=|a*b|; em listas mais longas ambas as medidas se constroem dobrando os mesmos passos binários da esquerda para a direita.
Devolver os dois campos numa resposta evita uma segunda ida e volta quando você precisa de frações em termos mínimos e um período comum no mesmo pipeline.
Como o algoritmo permanece exato
O MDC usa Euclides: substitui (a,b) por (b, a mod b) até resto zero, sempre em valores absolutos para o sinal não mudar o resultado. O MMC é calculado par a par como abs(a)/mdc(a,b)*abs(b), dividindo antes de multiplicar para limitar o crescimento intermediário. Zero é rejeitado porque MMC com zero é indefinido neste contrato.
Onde você usa
Código de jogos e animação agenda laços num MMC compartilhado de comprimentos de quadro. Engenheiros simplificam taxas multi-denominador ou razões de relógio de amostragem sem planilha. Como a capacidade é aritmética pura de camada parse não há salto de rede, aleatoriedade nem loteria de ponto flutuante além de faixas inteiras ordinárias.
Casos de uso
Checagem de lição de casa
Verifique respostas de MDC e MMC para listas com mais de dois elementos sem dobrar à mão os passos de Euclides.
Períodos compartilhados
Encontre o comprimento de ciclo comum mínimo para temporizadores, animações ou taxas de amostragem que precisam coincidir no mesmo tic.
Simplificação de taxas
Reduza razões multi-denominador calculando primeiro um único MDC em todos os termos.
Perguntas frequentes
É grátis?
Sim. O tier A roda inteiro no navegador sem conta.
Quantos números posso enviar?
Pelo menos dois inteiros. Não há teto especial além do tamanho ordinário da solicitação; MDC e MMC dobram par a par em todo o array.
Números negativos são permitidos?
Sim. A ferramenta usa valores absolutos para o MDC e devolve um MMC não negativo.
Chama a rede?
Não. O motor parse mantém tudo no dispositivo.
Para que serve o MMC na prática?
Para descobrir quando ciclos de durações diferentes voltam a coincidir, como temporizadores, animações ou taxas de amostragem que precisam cair no mesmo instante. Para doze, dezoito e vinte e quatro, o ciclo em comum é 72.
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-lcm \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"numbers":[12,18,24]}'const res = await fetch("https://api.kit.forhosting.com/math/gcd-lcm", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"numbers": [
12,
18,
24
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/gcd-lcm",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"numbers": [
12,
18,
24
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/gcd-lcm", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"numbers":[12,18,24]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"numbers":[12,18,24]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/gcd-lcm", 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
{
"numbers": [
12,
18,
24
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.gcd_lcm",
"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
Como o algoritmo permanece exato
Não inteiros, valores não finitos e arrays com menos de dois elementos geram invalid_input com mensagem clara para o cliente corrigir o payload sem adivinhar.
Perguntas técnicas
Por que o zero é rejeitado?
MMC envolvendo zero é indefinido neste contrato, então qualquer zero gera invalid_input.