Calculadora de desconto percentual
Use esta calculadora de desconto percentual para achar o preço com desconto e o valor economizado a partir de um preço original e de um desconto. Ela também cobre as contas de porcentagem de desconto, com descontos acumulados, imposto sobre vendas, 50 por cento de desconto e o desconto a partir de dois preços.
Os valores de exemplo já estão preenchidos. Substitua-os pelos seus.
Preço com desconto
90,00
Passo a passo
- 120 − 25% (30,00) = 90,00
- Você economiza
- 30,00
Uma jaqueta está marcada com US$ 249,99 e 15% de desconto. Quanto você paga de fato e quanto economiza? E se um segundo cupom de 10% for aplicado, são 25% de desconto ou menos?
Digite o preço original e o desconto percentual nesta calculadora de desconto percentual. Ela devolve o preço com desconto e o valor economizado, e permite acrescentar um segundo desconto e o imposto sobre vendas. Também funciona no sentido inverso: informe o preço original e o preço com desconto e ela acha o desconto.
Como funciona o desconto percentual
Resposta rápida: multiplique o preço original pelo desconto percentual dividido por 100 para obter o valor economizado e depois subtraia esse valor do preço original. 20% de desconto em US$ 80 economiza US$ 16 e deixa um preço com desconto de US$ 64.
Como calcular o desconto percentual
economia = preço original * desconto percentual / 100preço com desconto = preço original * (1 - desconto percentual / 100)- Divida o desconto percentual por 100 para transformá-lo em decimal (20% vira 0,20).
- Multiplique pelo preço original para obter o valor economizado.
- Subtraia o valor economizado do preço original para obter o preço com desconto.
Cálculo mental rápido para descontos comuns
Para 10% de desconto, desloque a vírgula uma casa para a esquerda para obter a economia e depois subtraia-a. Para 20% de desconto, dobre esse décimo. Para 15%, some ao décimo a metade dele. Para 25% de desconto, tome um quarto do preço, e para 50% de desconto, tome a metade. Em US$ 80, um décimo é US$ 8, então 20% de desconto economiza US$ 16 e 15% de desconto economiza US$ 12. Use o cálculo mental para uma conferência rápida na loja e a calculadora de desconto percentual sempre que houver um segundo desconto ou imposto.
Combinando dois descontos
Um segundo desconto incide sobre o preço já reduzido, não sobre o original, então as duas porcentagens nunca simplesmente se somam. Multiplique as duas partes restantes: 20% de desconto e depois 10% deixam 0,80 × 0,90 = 0,72 do preço, o que dá 28% de desconto no total. Na jaqueta de US$ 249,99, 15% de desconto e depois 10% deixam 0,85 × 0,90 = 0,765 do preço, ou seja, US$ 191,24 e 23,5% de desconto, e não 25%.
Desconto percentual com imposto sobre vendas
Em muitos caixas dos EUA, o desconto vem primeiro e o imposto é cobrado sobre o preço com desconto. Multiplique o preço com desconto pela alíquota para obter o imposto e some. As duas etapas são multiplicações, então calcular o imposto primeiro dá o mesmo total. Alguns lugares e tipos de cupom cobram o imposto sobre o preço antes do desconto, o que sai mais caro, por isso confira como sua loja faz.
Como achar o desconto a partir de dois preços
Para calcular a porcentagem de desconto, divida o valor economizado pelo preço original, e não pelo preço com desconto, e multiplique por 100. A fórmula da porcentagem de desconto é (original − com desconto) ÷ original × 100. Um item de US$ 60 em promoção por US$ 45 está com 25% de desconto. Use o modo de dois preços da calculadora de desconto percentual acima para fazer a conta.
Como achar o preço original
Se você só conhece o preço com desconto e o desconto percentual, divida o preço com desconto por (1 − desconto ÷ 100). Um preço de US$ 64 depois de 20% de desconto veio de 64 ÷ 0,80 = US$ 80. A calculadora de porcentagem inversa faz isso em uma só etapa.
Exemplos de desconto percentual
Descontos percentuais comuns em um item de US$ 80:
| Desconto percentual | Valor economizado | Preço com desconto |
|---|---|---|
| 10% | US$ 8,00 | US$ 72,00 |
| 15% | US$ 12,00 | US$ 68,00 |
| 20% | US$ 16,00 | US$ 64,00 |
| 25% | US$ 20,00 | US$ 60,00 |
| 30% | US$ 24,00 | US$ 56,00 |
| 50% | US$ 40,00 | US$ 40,00 |
Exemplo 1: 20% de desconto em US$ 80
Dados
Passo 1
0,20 × 80 = 16.
Resposta
Exemplo 2: 15% de desconto em US$ 249,99, com arredondamento
Dados
Passo 1
0,15 × 249,99 = 37,4985, que arredonda para US$ 37,50 de economia.
Resposta
Exemplo 3: 20% de desconto e depois 10% em US$ 100
Dados
Passo 1
Depois do primeiro desconto, o preço é US$ 80.
Resposta
Exemplo 4: 25% de desconto em US$ 120 com 8% de imposto sobre vendas
Dados
Passo 1
Com 25% de desconto sobra US$ 90.
Resposta
Exemplo 5: achando o desconto a partir de dois preços
Dados
Passo 1
A economia é de US$ 15, e 15 ÷ 60 = 0,25.
Resposta
Código do desconto percentual
As duas versões reproduzem os exemplos acima (US$ 64,00, US$ 212,49, US$ 72,00 e US$ 97,20 com imposto) e rejeitam uma porcentagem fora do intervalo de 0 a 100.
JavaScript
const round2 = (x) => Math.round((x + Number.EPSILON) * 100) / 100;function check(name, v, max = Infinity) { if (typeof v !== "number" || !Number.isFinite(v)) throw new TypeError(`${name} must be a finite number`); if (v < 0 || v > max) throw new RangeError(`${name} must be between 0 and ${max}`);}export function percentOff(price, percentOff, { secondPercentOff = 0, taxPercent = 0 } = {}) { check("price", price); check("percentOff", percentOff, 100); check("secondPercentOff", secondPercentOff, 100); check("taxPercent", taxPercent, 100); const salePrice = price * (1 - percentOff / 100) * (1 - secondPercentOff / 100); const tax = salePrice * (taxPercent / 100); return { salePrice: round2(salePrice), saved: round2(price - salePrice), tax: round2(tax), total: round2(salePrice + tax), };}export function discountFromPrices(original, sale) { check("original", original); check("sale", sale); if (original === 0) throw new RangeError("original must be greater than 0"); if (sale > original) throw new RangeError("sale must not exceed original"); return ((original - sale) / original) * 100;}Python
from decimal import Decimal, ROUND_HALF_UPimport mathCENT = Decimal("0.01")def _num(name, v, hi=None): if isinstance(v, bool) or not isinstance(v, (int, float, Decimal)) or not math.isfinite(float(v)): raise ValueError(f"{name} must be a finite number") v = Decimal(str(v)) if v < 0 or (hi is not None and v > hi): raise ValueError(f"{name} is out of range") return vdef percent_off(price, percent_off, second_percent_off=0, tax_percent=0): price = _num("price", price) p1 = _num("percent_off", percent_off, 100) p2 = _num("second_percent_off", second_percent_off, 100) tax_p = _num("tax_percent", tax_percent, 100) sale = price * (1 - p1 / 100) * (1 - p2 / 100) tax = sale * tax_p / 100 q = lambda x: x.quantize(CENT, rounding=ROUND_HALF_UP) return {"sale_price": q(sale), "saved": q(price - sale), "tax": q(tax), "total": q(sale + tax)}Use Decimal (Python) ou centavos inteiros para dinheiro. Os números de ponto flutuante binário podem jogar meio centavo para o lado errado.
Privacidade e segurança das entradas
Os preços são calculados no seu navegador. Os números digitados não são enviados a um servidor nem armazenados.
- Um desconto percentual abaixo de 0 ou acima de 100 é recusado, porque um desconto negativo é um aumento de preço e mais de 100% de desconto daria um preço negativo.
- Neste idioma a vírgula é o separador decimal, então 12,5 é doze e meio e 1,200 é 1,2. O ponto funciona como separador de milhares quando é seguido de uma vírgula decimal, por isso 1.234,5 é lido como 1234,5. Entradas como 1.234 (um ponto seguido de exatamente três dígitos, sem vírgula) ou 1,2,3 são recusadas por serem ambíguas, em vez de adivinhadas. Os espaços entre grupos de dígitos, inclusive os não separáveis, são ignorados, então 1 200 é lido como 1200.
Erros comuns com o desconto percentual
| Erro | O que dá errado | O que a calculadora faz |
|---|---|---|
| Somar as porcentagens de descontos combinados | 20% e depois 10% de desconto em US$ 100 não são 30% de desconto (US$ 70); o preço correto é US$ 72 | Multiplica as parcelas restantes e mostra a porcentagem combinada |
| Dividir pelo preço com desconto para achar o desconto percentual | US$ 15 ÷ US$ 45 dá 33,3% em vez de 25% | Divide sempre pelo preço original |
| Tratar a porcentagem como dólares | 20% de desconto em US$ 80 lido como 80 − 20 = US$ 60 em vez de US$ 64 | Converte a porcentagem em uma fração do preço |
| Arredondar a cada etapa | O último centavo se desvia | Arredonda apenas os valores finais |
| Cobrar o imposto sobre o preço original | Total de US$ 99,60 em vez de US$ 97,20 no Exemplo 4 | Cobra o imposto sobre o preço com desconto e informa isso |
| Desconto acima de 100 ou abaixo de 0 | Dá um preço negativo ou um aumento de preço | Recusa o valor com uma mensagem |
| Ler "compre 2 e ganhe 1" como 50% de desconto | Você paga por 2 de 3 itens, o que dá 33,3% de desconto em cada um | Digite 33,33 como desconto percentual |
Desconto percentual, desconto, remarcação para baixo e markup
| Termo | Fórmula | Base | Usado para |
|---|---|---|---|
| Desconto percentual, desconto | original × porcentagem ÷ 100 | Preço original | A economia que o consumidor vê |
| Remarcação para baixo | (original − novo) ÷ original × 100 | Preço original | A mesma redução, nas palavras do varejista |
| Redução percentual | (antigo − novo) ÷ antigo × 100 | Valor inicial | Qualquer queda de um valor, não só de preços |
| Aumento percentual | (novo − antigo) ÷ antigo × 100 | Valor inicial | Altas de preço, o sentido oposto |
| Markup (acréscimo sobre o custo) | (preço − custo) ÷ custo × 100 | Custo do vendedor | O que o vendedor soma ao custo, não um desconto para o consumidor |
Percentual de desconto e remarcação para baixo descrevem a mesma redução. As calculadoras de redução percentual e de aumento percentual cobrem essas duas linhas para qualquer valor, e não só para preços. O markup usa o custo do vendedor como base, então um markup de 50% não é o mesmo que uma margem de 50% nem um desconto de 50%.