Oi, André. Tudo bem com você?
Obrigado por compartilhar sua solução para o exercício sobre closure. Você aplicou corretamente o conceito principal da atividade ao criar uma função interna (aplicar_des) que utiliza o valor de fator definido na função externa (calcular_des). Isso demonstra que você compreendeu como uma closure consegue manter acesso às variáveis do escopo onde foi criada, mesmo após a execução da função externa ter terminado.
Há apenas um detalhe importante em relação ao resultado esperado da atividade. Atualmente, a função interna está calculando apenas o valor do desconto sobre o produto, e não o preço final com desconto. Por exemplo, para um produto de 200 reais com desconto de 10%, sua função retorna 20, que corresponde ao valor descontado. A proposta do exercício solicita o preço final da compra, que nesse caso seria 180.
Fora esse ajuste na lógica do cálculo, a utilização da closure está correta e segue exatamente a ideia apresentada no conteúdo.
Como exercício complementar, como você adaptaria essa mesma closure para permitir tanto descontos quanto acréscimos percentuais utilizando a mesma estrutura?
Parabéns pela implementação e por compartilhar seu raciocínio no fórum. Continue trazendo suas soluções e experimentando diferentes abordagens. O fórum está à disposição para novas dúvidas e discussões.
Para saber mais:
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!