Eu começaria pedindo para o usuário informar o valor da primeira despesa. Depois disso, o sistema vai verificar se esse valor é zero ou não. Se for zero, significa que não há despesas a registrar e o programa encerra mostrando o total, que nesse caso seria zero. Se o valor for diferente de zero, o sistema adiciona esse valor a um acumulador que começa em zero e depois pede o próximo valor de despesa.
Esse processo se repete continuamente, sempre somando o novo valor ao total anterior e pedindo um novo valor. A cada iteração, o sistema verifica novamente se o valor digitado é zero. Enquanto o usuário continuar informando valores diferentes de zero, o sistema mantém somando e pedindo mais despesas. Quando finalmente o usuário digita zero, o programa entende que não há mais despesas a registrar e exibe o total acumulado de todas as despesas informadas anteriormente.
A vantagem dessa abordagem é que o usuário não precisa dizer antecipadamente quantas despesas tem. O sistema é flexível e se adapta à quantidade real de despesas que cada pessoa tem em um determinado mês, seja uma despesa, dez despesas ou cem despesas. O processo é intuitivo porque usa um valor especial, o zero, como sinalizador de encerramento, o que é uma prática comum em programação.
Algoritmo em linguagem natural:
- Inicialize uma variável chamada total com o valor zero.
- Solicite ao usuário que informe o valor de uma despesa.
- Enquanto o valor informado for diferente de zero, execute os seguintes passos: adicione o valor informado à variável total, solicite ao usuário que informe o próximo valor de despesa.
- Quando o valor informado for igual a zero, exiba na tela a mensagem "Total de despesas" seguida do valor armazenado na variável total.
- Encerre o programa.