INÍCIO
DEFINIR total_gasto COMO 0
DEFINIR valor_despesa COMO -1
ENQUANTO valor_despesa FOR DIFERENTE DE 0, FAÇA:
SOLICITAR "Informe o valor da despesa ou digite 0 para finalizar:"
LER valor_despesa
SE valor_despesa FOR MAIOR QUE 0, ENTÃO:
total_gasto ← total_gasto + valor_despesa
SENÃO SE valor_despesa FOR MENOR QUE 0, ENTÃO:
EXIBIR "Valor inválido. Informe uma despesa positiva ou 0 para finalizar."
SENÃO:
EXIBIR "Cadastro de despesas finalizado."
FIM ENQUANTO
EXIBIR "Total gasto no mês: R$ ", total_gasto
FIM
Esse algoritmo começa definindo o total gasto como zero e utiliza uma estrutura de repetição ENQUANTO, pois a pessoa usuária pode informar quantas despesas desejar, sem precisar dizer previamente a quantidade de gastos. A cada valor positivo digitado, o sistema soma esse valor ao total acumulado. Caso seja informado um valor negativo, o sistema exibe uma mensagem de valor inválido. Quando a pessoa usuária digita 0, o cadastro de despesas é encerrado e o sistema apresenta o total gasto no mês.
Essa lógica também se relaciona com uma funcionalidade que utilizei no meu projeto Smart Finance 2.0, um site voltado para controle financeiro pessoal:
https://smart-finance-2-0.vercel.app/