1
resposta

[Projeto] Gerador de funções personalizadas

def criar_desconto(porcentagem):
    def aplicar_desconto(valor):
        return valor - (valor * porcentagem / 100)
    return aplicar_desconto


# Entrada de dados
porcentagem = float(input("Digite a porcentagem de desconto: "))
valor = float(input("Digite o valor da compra: "))

desconto = criar_desconto(porcentagem)
preco_final = desconto(valor)

# Saída
print(f"Preço final com desconto: {preco_final}")
1 resposta

Oi, Willians! Como vai?

Agradeço por compartilhar.

Gostei da sua solução, pois você usou bem o conceito de função interna ao criar aplicar_desconto() dentro de criar_desconto(). Isso mostra que você entendeu como uma função pode gerar outra função personalizada, guardando a porcentagem informada para aplicar depois no valor da compra.

Dica: você pode formatar o resultado com duas casas decimais usando :.2f, assim o preço final fica mais organizado para valores monetários: print(f"Preço final com desconto: R$ {preco_final:.2f}").

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!