Olá, Moises! Como vai?
Parabéns pela excelente resolução do desafio! O seu algoritmo em linguagem natural ficou impecável e descreve com muita clareza a lógica de um dos comportamentos mais importantes da programação: o laço de repetição condicional controlado por um valor sentinela (que, no seu caso, é o número zero).
A forma como você estruturou o fluxo demonstra que você entendeu perfeitamente os pilares do pensamento computacional. Vamos destacar os pontos altos da sua solução:
Análise Técnica do seu Fluxo
- Inicialização de Estado: Você começou definindo que o "total é igual a zero". Na programação, chamamos isso de inicializar a variável acumuladora. Sem esse ponto de partida, o computador não saberia onde somar o primeiro valor.
- Validação de Entrada: O seu filtro "Se o valor for maior que zero, some esse valor ao total" foi uma excelente sacada de proteção do código. Isso garante que o programa ignore valores negativos que poderiam adulterar o cálculo final de forma errada.
- Critério de Parada Claro: Você amarrou muito bem a saída do bloco de repetição. O zero funciona como o "botão de desligar" do processo, impedindo que o seu programa entre em um loop infinito.
Como esse fluxo funciona visualmente?
Para ajudar a fixar ainda mais esse conceito na mente, veja como a lógica que você escreveu em texto se traduz perfeitamente no desenho de um fluxograma de programação:
Uma dica para quando você for programar
Quando você avançar para as aulas de código (em Python ou JavaScript, por exemplo), você verá que o seu algoritmo vai se transformar quase que literalmente nesta estrutura:
total = 0
# O loop roda por tempo indeterminado
while True:
despesa = float(input("Informe o valor da despesa (ou 0 para sair): "))
if despesa == 0:
break # Para a coleta exatamente como você planejou
if despesa > 0:
total += despesa # Soma ao total acumulado
else:
print("Valor inválido! Digite apenas números positivos.")
print(f"O total gasto no mês foi: R$ {total:.2f}")
O seu raciocínio está perfeitamente alinhado com as boas práticas de lógica e estruturação de processos. Continue com esse foco e consistência nos próximos desafios!
Espero que possa ter lhe ajudado!