Olá, Julia. Como vai?
Parabéns pela resolução do desafio! É excelente ver você aplicando as estruturas de controle do pensamento computacional para desenhar a lógica de um problema real de finanças pessoais.
O seu algoritmo em pseudocódigo/linguagem natural capturou muito bem a essência do que foi pedido. Você utilizou corretamente uma estrutura de repetição (enquanto) baseada em uma condição de parada, que é a escolha perfeita quando não sabemos antecipadamente quantas vezes o usuário vai digitar um valor.
A sua visão de longo prazo no final do post foi fantástica! Classificar os gastos em categorias (mercado, lazer, transporte), gerar relatórios detalhados e usar dados históricos para prever despesas futuras usando Inteligência Artificial e Ciência de Dados é exatamente o ecossistema que move as grandes fintechs do mercado hoje. Você pensou como uma verdadeira arquiteta de software!
Apenas para te ajudar a alinhar o seu algoritmo 100% com o enunciado da atividade, quero compartilhar um detalhe sutil sobre a regra de parada:
Ajustando a Condição de Interrupção
No seu algoritmo atual, você definiu que a repetição para se a entrada for vazia:
se despesa vazia
falso
O enunciado do desafio pedia uma regra um pouquinho diferente: "O processo continua até que o valor digitado seja zero."
No desenvolvimento de sistemas, tratar o número 0 como fim é um padrão clássico conhecido como Valor Sentinela (um dado específico que serve apenas para avisar o programa que a brincadeira acabou). Reajustando o seu pseudocódigo para ler o número zero e garantir que a palavra falso mude o estado do laço, a lógica ficaria impecável assim:
total_despesas -> 0
continuar_lendo -> verdadeiro
enquanto continuar_lendo for verdadeiro:
despesa = ler entrada usuario
se despesa for igual a 0:
continuar_lendo -> falso
senao:
somar despesa ao total_despesas
imprimir total_despesas
Como esse Raciocínio se Transforma em Código Real?
Veja que incrível: quando você domina o pensamento computacional em linguagem natural, traduzir isso para qualquer linguagem de programação de mercado (como o Python) vira um processo quase automático.
Olha como o algoritmo que você desenhou se transforma em um script real de computador respeitando exatamente os seus passos:
total_despesas = 0
while True:
despesa = float(input("Digite o valor da despesa (ou 0 para encerrar): "))
if despesa == 0:
break # Interrompe o laço 'enquanto' imediatamente
else:
total_despesas += despesa
print(f"O total de despesas do mês foi: R$ {total_despesas:.2f}")
Parabéns pela estruturação lógica e, principalmente, por já enxergar as evoluções futuras que o seu projeto pode ter. Continue com essa mentalidade analítica e ótimos estudos na computação!
Espero que possa ter lhe ajudado!