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

Chain of Responsibility

Queria entender como esse código não aplica dois descontos ao mesmo tempo, mesmo que o orçamento atenda as duas condições.

1 resposta
solução!

Oi Wesllei, tudo bem?

Dei uma olhada no vídeo que você marcou nessa pergunta e vi que as condições do cálculo de descontos é mais ou menos assim:

if condicao_desconto_1:
    desconto_1
elif condicao_desconto_2:
    desconto_2

Certo?

Então... O if, elif e else são condicionais que sempre vai entrar em somente um deles. Como o próprio nome já induz, basicamente a tradução seria: Se X faça isso, Senão Se Y faça aquilo, Senão faça outra coisa Sempre vai parar na primeira condição que "bater".

Para que calcule dois ou mais descontos teria que separar o if e elif em dois if separados, assim um não "olharia" para a condição do outro e caso sua condição atenda ele vai aplicar o desconto.