Olá, Vanessa. Como vai?
Parabéns por mais uma excelente resolução! O seu código reflete exatamente o comportamento esperado de um acumulador usando a estrutura de repetição for em Python. O resultado final de 150 está totalmente correto.
Para enriquecer ainda mais o seu tópico e ajudar outros colegas que estão iniciando a entender o fluxo lógico dessa atividade, podemos mapear o que acontece com as variáveis a cada iteração do laço.
O operador += funciona como um somatório acumulativo, onde a linha soma_total += valor significa, nos bastidores, soma_total = soma_total + valor.
Veja o rastreamento passo a passo do seu código:
- Início:
soma_total começa valendo 0. - 1ª iteração: O laço lê o número
10. Logo, soma_total = 0 + 10, que resulta em 10. - 2ª iteração: O laço lê o número
20. Logo, soma_total = 10 + 20, que resulta em 30. - 3ª iteração: O laço lê o número
30. Logo, soma_total = 30 + 30, que resulta em 60. - 4ª iteração: O laço lê o número
40. Logo, soma_total = 60 + 40, que resulta em 100. - 5ª iteração: O laço lê o número
50. Logo, soma_total = 100 + 50, que resulta no valor final de 150.
Uma Alternativa Prática em Python
A forma como você construiu o código com o laço for é fundamental para compreender a lógica algorítmica de controle de fluxos e estruturas acumuladoras.
Como dica extra de código limpo (clean code), vale destacar que o Python possui uma função nativa chamada sum() criada justamente para simplificar esse tipo de operação com listas. Se você quisesse obter o mesmo resultado em uma única linha, sem a necessidade de criar o laço manualmente, poderia escrever:
valores = [10, 20, 30, 40, 50]
soma_total = sum(valores)
print(f'A soma total das receitas é: {soma_total}')
Conhecer o laço for te dá a base para criar lógicas mais complexas (como filtrar valores antes de somar), enquanto a função sum() traz agilidade para somas diretas no dia a dia de desenvolvimento. Continue compartilhando seus códigos com a comunidade!
Espero que possa ter lhe ajudado!