Calculadora de Números Complexos
A calculadora de números complexos executa as quatro operações aritméticas básicas sobre dois números complexos fornecidos como partes real e imaginária.
Executar grátis
Você informa a = a_real + a_imag·i e b = b_real + b_imag·i, escolhe somar, subtrair, multiplicar ou dividir e recebe o número complexo resultante tanto na forma retangular quanto em uma cadeia de texto legível. A divisão é calculada com a fórmula exata do conjugado e rejeita corretamente a divisão por zero. O mesmo código determinístico roda grátis no seu navegador e por meio da API paga, de modo que o que você testa nesta página é exatamente o que a sua integração recebe.
O que uma operação com números complexos realmente calcula
Um número complexo é um par de números reais escrito como a + bi, em que i é a unidade imaginária que satisfaz i² = −1. A adição e a subtração funcionam componente a componente: as partes reais se combinam e as partes imaginárias se combinam de forma independente, de modo que (3 + 2i) + (1 − 4i) = 4 − 2i. A multiplicação é o caso interessante porque usa a propriedade que define i. Expandir (a + bi)(c + di) pela propriedade distributiva dá ac + adi + bci + bdi² e, como i² = −1, o resultado é (ac − bd) + (ad + bc)i. A parte real de um produto não é o produto das partes reais, o que é o erro mais comum de quem calcula à mão. Esta calculadora de números complexos aplica essas fórmulas em forma fechada diretamente, sem iteração e sem aproximação além do arredondamento final, portanto a resposta é determinística: as mesmas entradas sempre produzem saídas idênticas byte a byte, seja no seu navegador, seja em nossos servidores de borda por meio da API.
A divisão e o truque do conjugado
Dividir números complexos é a operação que mais exige uma calculadora, pois a fórmula não é óbvia. Para calcular (a + bi) / (c + di), multiplica-se o numerador e o denominador pelo conjugado do denominador, (c − di). O denominador passa a ser c² + d², um número real comum, e o numerador é expandido pela regra da multiplicação. O resultado final é ((ac + bd) / (c² + d²)) + ((bc − ad) / (c² + d²))i. O único caso em que isso falha é quando c² + d² = 0, o que ocorre apenas quando c e d são ambos zero — o número complexo zero. A divisão por zero é indefinida no corpo dos complexos assim como nos reais, e este endpoint a reporta como erro de entrada inválida, em vez de devolver um resultado infinito ou NaN que corromperia silenciosamente um pipeline posterior. Os resultados são arredondados para dez casas decimais para que o ruído de ponto flutuante nunca apareça na saída, e o zero negativo é normalizado para zero, garantindo respostas limpas e comparáveis.
Onde a aritmética complexa aparece na prática
Números complexos não são uma curiosidade acadêmica; são a notação de trabalho de várias disciplinas de engenharia. Engenheiros eletricistas representam impedâncias e fasores como números complexos, de modo que combinar dois elementos de circuito em série é uma adição e calcular funções de transferência é uma divisão. O processamento de sinais expressa componentes de frequência como valores complexos vindos de uma transformada de Fourier, e a filtragem os multiplica por coeficientes complexos. A teoria de controle posiciona polos e zeros no plano complexo, e a mecânica quântica é escrita em amplitudes complexas desde o início. Em todos esses campos a aritmética em si é mecânica — as quatro operações desta página a cobrem por completo — e o valor de uma API é poder incorporá-la a uma etapa de validação, a uma ferramenta de ensino ou a um gerador de código sem reimplementar as fórmulas. Como a capacidade é sem estado e determinística, é seguro armazená-la em cache, repeti-la e executá-la em paralelo com quantos pares de operandos a sua carga de trabalho exigir.
Casos de uso
Conferir cálculos de impedância de circuitos
Some ou divida impedâncias complexas ao combinar componentes em série e em paralelo, e verifique o cálculo manual antes de fechar o projeto de uma placa.
Criar uma ferramenta de ensino ou de tarefas
Envie exercícios de alunos pela API para gerar respostas exatas e resolvidas de (a + bi) × (c + di) sem manter as fórmulas por conta própria.
Validar a saída de processamento de sinais
Faça a verificação cruzada de um pipeline de DSP comparando seus produtos e quocientes complexos com uma implementação de referência independente e determinística.
Perguntas frequentes
Quanto custa?
US$ 0,002 por requisição via API. Também é grátis executar no seu navegador nesta página — o mesmo código roda das duas formas.
Quais operações são suportadas?
Somar, subtrair, multiplicar e dividir, informadas no campo de operação. Cada uma recebe dois números complexos dados como partes real e imaginária.
O que acontece quando eu divido por zero?
Se o segundo número complexo for 0 + 0i, a requisição é rejeitada com um erro de entrada inválida. A divisão pelo número complexo zero é indefinida e nunca é aproximada.
Qual é a precisão do resultado?
As fórmulas são formas fechadas exatas; a saída é arredondada para dez casas decimais para eliminar o ruído de ponto flutuante, e o zero negativo é normalizado para zero.
Posso inserir partes negativas ou decimais?
Sim. As partes real e imaginária aceitam qualquer número finito, incluindo negativos e decimais como 2.5 ou −0.75.
Algo é armazenado?
Não. O cálculo é sem estado: os quatro números são processados em memória e descartados, e apenas o resultado é retornado.
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/complex-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a_real":3,"a_imag":2,"b_real":1,"b_imag":-4,"operation":"multiply"}'const res = await fetch("https://api.kit.forhosting.com/math/complex-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a_real": 3,
"a_imag": 2,
"b_real": 1,
"b_imag": -4,
"operation": "multiply"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/complex-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a_real": 3,
"a_imag": 2,
"b_real": 1,
"b_imag": -4,
"operation": "multiply"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/complex-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a_real":3,"a_imag":2,"b_real":1,"b_imag":-4,"operation":"multiply"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a_real":3,"a_imag":2,"b_real":1,"b_imag":-4,"operation":"multiply"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/complex-number", 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_real": 3,
"a_imag": 2,
"b_real": 1,
"b_imag": -4,
"operation": "multiply"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.complex_number",
"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. |