Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

2
respostas

Faça como eu fiz: calculando o total de vendas

def titulo(txt):
    print('=' * len(txt))
    print(txt)
    print('=' * len(txt))

def vendas_realizadas():
    vendas = []
    while True:
        venda = float(input('Digite o valor da venda: '))
        vendas.append(venda)
        while True:
            opcao = input('Quer continuar? [S/N]').strip().upper()
            if opcao in ('S', 'N'):
                break
        if opcao == 'N':
            break
    return vendas

def soma_vendas(lista_vendas):
    total = sum(lista_vendas)
    print(f'O total de vendas foi de R${total}')

def main():
    titulo('CALCULANDO O TOTAL DE VENDAS')
    lista_vendas = vendas_realizadas()
    soma_vendas(lista_vendas)


if __name__ == '__main__':
    main()
2 respostas

Oi, Giovanni. Tudo bem com você?

Sua solução de cálculo de vendas foi muito criativa na forma como expandiu o exercício proposto. Em vez de receber as vendas em uma única linha, você estruturou um programa interativo que coleta os valores de forma individual, com confirmação a cada entrada. A modularização do código em funções bem definidas torna a solução clara e reutilizável. A função vendas_realizadas() implementa um duplo loop para garantir que o usuário valide sua escolha de continuar ou não, enquanto soma_vendas() realiza o cálculo e exibição do total.

Sua abordagem demonstra compreensão sólido de funções, uso de listas e estruturas de controle de fluxo. A implementação com if __name__ == '__main__' mostra que você conhece boas práticas de organização em Python. Uma sugestão seria considerar adicionar tratamento de erros ao receber os valores de venda, capturando possíveis exceções caso o usuário digite algo que não seja um número válido, tornando o programa mais robusto.

Como você poderia adaptar a função titulo() para torná-la mais flexível, talvez permitindo diferentes caracteres para criar o bordado?

Parabéns pela solução bem pensada. Continue compartilhando seus trabalhos, o fórum está à disposição.

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

Muito obrigado pelo feedback e pelas dicas!