1
resposta

[Sugestão] Sobre a opção com 5000 de quantidade de milhas.

Boa noite, fiz uns testes com a sugestão de resposta e no enunciado estava escrito "[...] Mas, segundo relatos de clientes, ao tentar utilizar o desconto referente a 5.000 milhas, não ocorre nenhum desconto." Segue o código:

let porcentagemDesconto = 0;
let quantidadeMilhas = prompt('Digite a quantidade de milhas: ')

if(quantidadeMilhas >= 30000){
    porcentagemDesconto = porcentagemDesconto + 20;
} else {
    if(quantidadeMilhas >= 5000){
    porcentagemDesconto = porcentagemDesconto + 10;
    }
}
alert(`Você recebeu:  ${porcentagemDesconto}% de desconto! `);

A estrutura condicional mostrada na questão difere quanto ao símbolo dos operadores de comparação, que atualmente está como "=" e retorna o valor 0.

1 resposta

Oi, Andrey! Tudo bem?

Nesse caso, considerar ou não 5.000 milhas exatas para aplicar o desconto fica atrelado à interpretação da lógica de como os descontos serão aplicados. Como temos as seguintes condições de lógica para aplicarmos no nosso projeto:

  • Pessoas com uma quantidade de milhas inferior a 5.000 não recebem desconto.
  • Pessoas com uma quantidade de milhas igual ou superior a 30.000 recebem 20% de desconto.
  • Pessoas com uma quantidade de milhas superior a 5.000, mas inferior a 30.000, recebem 10% de desconto.

Podemos notar que a única especificação para aplicação do desconto de 10% em relação às 5.000 milhas é que a quantidade de milhas seja superior (e não igual ou superior a 5.000), por isso a resposta na questão é apresentada da seguinte forma, fazendo a verificação a partir de 5.001 milhas:

let porcentagemDesconto = 0;

if(quantidadeMilhas >= 30000){
    porcentagemDesconto = porcentagemDesconto + 20;
} else {
    if(quantidadeMilhas > 5000){
    porcentagemDesconto = porcentagemDesconto + 10;
}

}

Espero ter ajudado!

Um forte abraço e bons estudos!