Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] O desconto não está sendo aplicado, pq?

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta
solução!

Oi Antonio, tudo bem? 😊

Analisando o seu código, o problema está na forma como você está calculando o desconto. 🤔

Em Java, quando você divide dois números inteiros, o resultado é um inteiro.

No seu caso, (10/100) resulta em 0, pois a divisão inteira de 10 por 100 é zero.

Para corrigir isso, você precisa garantir que a divisão seja feita usando números de ponto flutuante (como double).

Você pode fazer isso alterando a expressão para (10.0/100.0) ou (10d/100d).

Veja como ficaria o código corrigido:

System.out.println("O cliente é cadastrado [S/N]?");
cadastro = input.nextLine();
if(cadastro.equalsIgnoreCase("S")) {
    for (int i = 0; i < precos.size(); i++){
        double desconto = precos.get(i) * (10.0/100.0);
        double precoDesconto = precos.get(i) - desconto;
        System.out.println(precoDesconto);
    }
}
input.close();

Dessa forma, o desconto será calculado corretamente. 👍

🎓 Para saber mais: