Desconto progressivo
Em sistemas de e-commerce e caixas registradoras, o cálculo de descontos progressivos é comum. Você precisa aplicar regras diferentes dependendo do valor da compra, sem erros que custem dinheiro para a loja. Dominar essa estrutura com if/elif/else é essencial para implementar lógicas de negócio reais.
O PROBLEMA
Peça o valor de uma compra e aplique desconto progressivo: até R$100 sem desconto, R$100-R$500 desconto de 10%, acima de R$500 desconto de 20%.
EXEMPLO
Entrada: R$300.00 Saída: Desconto: 10% — Valor final: R$270.00
SOBRE O CONCEITO
O segredo é testar as faixas em ordem crescente e usar operadores como >= para incluir corretamente os limites. Um erro comum é sobrepor intervalos: se você testa if valor >= 100: antes de elif valor >= 500:, a compra de R$600 entra no primeiro if (aplicando 10% em vez de 20%). A ordem correta é testar primeiro a faixa maior: if valor > 500: para 20%, elif valor >= 100: para 10%, e else para sem desconto. Outro erro é aplicar o percentual errado: o desconto é calculado como valor * desconto / 100 e subtraído do total. Sempre verifique se a condição cobre exatamente o intervalo desejado.
RESOLUÇÃO