Calculadora de porcentagem reversa
Um preço, saldo, medida ou total final costuma contar apenas parte da história. Esta calculadora de porcentagem reversa recupera o valor original quando você conhece o valor final, a porcentagem e se ela foi adicionada ou removida.
Executar grátis
Ela usa o multiplicador inverso correto, em vez de simplesmente subtrair a porcentagem informada do valor final. O resultado inclui o original recuperado, a variação absoluta e o multiplicador usado, facilitando a conferência, a explicação e a automação do cálculo.
Por que reverter uma porcentagem exige divisão
Uma alteração percentual é calculada sobre o valor original, e não sobre o valor final. Por isso, a operação inversa exige divisão. Se o valor original recebe um aumento de 20 por cento, o resultado corresponde a 120 por cento do original, ou ao original multiplicado por 1.20. Para recuperar o ponto de partida, divida o valor final por 1.20. Subtrair 20 por cento do valor final usaria outra base e produziria uma resposta incorreta. A mesma lógica vale para uma redução: depois da remoção de 20 por cento, restam 80 por cento do original, então o valor final deve ser dividido por 0.80. Selecione se a porcentagem foi adicionada ou removida, informe-a em pontos percentuais comuns e insira o valor final observado. A calculadora retorna o original e mostra o multiplicador e a fórmula exatos, para que você possa conferir como a resposta foi obtida.
Escolha corretamente entre adicionada e removida
A operação descreve o que aconteceu com o valor original desconhecido. Escolha adicionada quando margem, reajuste, crescimento, acréscimo ou outro aumento tiver produzido o valor final. Escolha removida quando desconto, redução, perda, encolhimento ou outra queda tiver levado ao resultado. Em uma adição, o divisor é um mais a porcentagem em forma decimal; em uma remoção, é um menos esse decimal. A porcentagem removida deve ser menor que 100 por cento, pois remover exatamente 100 por cento deixa zero para qualquer valor inicial e torna impossível recuperar o original apenas pelo resultado. Zero por cento é válido nas duas direções e mantém o valor inalterado. Preserve as unidades: se o final estiver em reais, quilogramas ou itens vendidos, o original e a variação usarão a mesma unidade. Digite 12.5 para representar 12.5 por cento, e não 0.125, evitando um erro de escala muito comum.
Como interpretar, arredondar e usar o resultado
O valor original é a quantia reconstruída antes da alteração informada. O valor da mudança é a diferença absoluta entre o original e o final, portanto permanece positivo tanto para adição quanto para remoção. O multiplicador registra a proporção do original que se tornou o resultado: por exemplo, 1.15 após um acréscimo de 15 por cento ou 0.85 após uma redução de 15 por cento. Por padrão, os campos numéricos são arredondados para dez casas decimais, mas você pode escolher de zero a quinze conforme a apresentação ou o processamento posterior. O arredondamento afeta somente a saída exibida; o cálculo usa a precisão numérica disponível. Duas casas podem ser convenientes para dinheiro, mas preserve mais quando precisar conciliar etapas intermediárias ou aplicar regras monetárias próprias. O endpoint é determinístico e não faz solicitações de rede, portanto entradas idênticas geram saídas idênticas, algo útil em verificações e fluxos automatizados.
Casos de uso
Desfazer uma margem de preço
Recupere o preço de atacado ou base quando o preço exibido inclui uma margem percentual conhecida.
Descobrir o valor antes do desconto
Calcule o valor original anunciado a partir do resultado com desconto e da porcentagem removida.
Reconstruir um saldo anterior
Volte de um saldo atual para o valor anterior a um aumento ou uma redução percentual conhecida.
Perguntas frequentes
Quanto custa uma solicitação de API?
Cada solicitação de API custa US$ 0,002. Você também pode usar a calculadora gratuitamente no navegador.
Por que não posso subtrair a porcentagem do valor final?
A porcentagem foi aplicada ao valor original, então o resultado usa outra base. A divisão pelo multiplicador reverte corretamente a alteração.
Como reverter um aumento percentual?
Escolha adicionada. A calculadora divide o valor final por um mais a porcentagem dividida por 100.
Como reverter uma redução percentual?
Escolha removida. A calculadora divide o valor final por um menos a porcentagem dividida por 100.
Por que a porcentagem removida deve ser menor que 100?
Com 100 por cento, o valor final é zero para qualquer original, portanto não há como recuperar um único valor inicial.
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/fin/reverse-percentage \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"final_amount":120,"percentage":20,"operation":"added"}'const res = await fetch("https://api.kit.forhosting.com/fin/reverse-percentage", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"final_amount": 120,
"percentage": 20,
"operation": "added"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/reverse-percentage",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"final_amount": 120,
"percentage": 20,
"operation": "added"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/reverse-percentage", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"final_amount":120,"percentage":20,"operation":"added"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"final_amount":120,"percentage":20,"operation":"added"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/reverse-percentage", 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
{
"final_amount": 120,
"percentage": 20,
"operation": "added"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.reverse_percentage",
"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. |