1
resposta

Calculando a soma dos números

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Alex. Como vai?

Parabéns por mais uma excelente resolução! É muito bacana acompanhar a sua evolução constante no PyCharm, chegando agora com sucesso ao arquivo Alura ex022.py.

O seu código ficou extremamente limpo, direto e eficiente. O console mostra exatamente o resultado correto: A soma total das receitas é: 150, encerrando o programa de forma perfeita (exit code 0).

Você fez uma excelente escolha ao utilizar a função nativa sum() do Python. No dia a dia de quem trabalha com dados, essa é a melhor prática para somar coleções numéricas.

Para agregar valor ao seu post e ajudar a galera do fórum a entender o que o Python fez por baixo dos panos, vale a pena fazermos um paralelo com a lógica estrutural desse exercício.


O que a função sum() faz na memória?

Quando você passa a lista valores para a função sum(), o interpretador do Python automatiza um processo de acumulação que, de outra forma, nós teríamos que construir manualmente usando um laço de repetição.

O comportamento interno do sum() funciona exatamente como esta esteira lógica:

  1. Ele inicializa um acumulador interno com o valor 0.
  2. Percorre a lista elemento por elemento, somando o valor atual ao acumulador:
  • $0 + 10 = 10$
  • $10 + 20 = 30$
  • $30 + 30 = 60$
  • $60 + 40 = 100$
  • $100 + 50 = 150$
  1. Devolve o resultado final direto para a sua variável soma_total.

Desafio de Lógica: Como seria sem o sum()?

Como este capítulo do curso é focado em laços for e while, uma excelente forma de treinar a sua lógica algorítmica para entrevistas técnicas ou desafios futuros é tentar replicar o comportamento do sum() usando uma estrutura de repetição manual.

Veja como o mesmo programa poderia ser escrito utilizando o laço for para atuar como o nosso acumulador passo a passo:

valores = [10, 20, 30, 40, 50]

# Criamos uma variável acumuladora manualmente começando em zero
soma_manual = 0

# O laço 'for' visita cada número dentro da lista de valores
for valor in valores:
    soma_manual += valor  # Soma o número atual ao total acumulado

print(f"A soma total das receitas (via laço for) é: {soma_manual}")

Note como a sua solução usando sum(valores) é muito mais elegante e compacta! Conhecer as duas formas é o segredo de um bom programador: você entende a lógica de base (o laço), mas usa a ferramenta mais otimizada da linguagem no dia a dia (a função).

Continue mantendo essa excelente consistência nos estudos e compartilhando seus códigos com a comunidade!

Espero que possa ter lhe ajudado!