2
respostas

Algoritmo de soma de despesas

Inicie o sistema.

Crie uma variável para guardar a soma total e atribua o valor 0.

Peça ao usuário que informe uma despesa.

Enquanto o valor informado for diferente de 0:

some esse valor à variável total;

peça que o usuário informe a próxima despesa.

Quando o usuário digitar 0, pare o processo.

Exiba na tela o valor total gasto.

Finalize.

2 respostas

Olá, João. Como vai?

Sua resolução está impecável! Você descreveu com muita clareza o funcionamento de um laço de repetição condicional (o famoso enquanto ou while), que é a estrutura ideal para este problema, já que não sabemos de antemão quantas despesas o usuário possui.

Para agregar ainda mais valor ao seu algoritmo, quero destacar um conceito muito importante na programação chamado Variável Acumuladora. No seu passo 5, quando você diz "some esse valor à variável total", o computador realiza uma operação de substituição: ele pega o que já existia no "total", soma com o novo valor e guarda o resultado de volta no mesmo lugar.

Em linguagens de programação, representamos essa sua lógica de uma forma bem resumida:

total = total + despesa ou simplesmente total += despesa


Dica de Ouro: Experiência do Usuário (UX)

Um detalhe que pode deixar seu algoritmo ainda mais profissional é adicionar uma pequena instrução na hora de pedir o valor. Como o número 0 tem uma função especial (encerrar o programa), é importante avisar isso ao usuário.

Seu passo 3 e 6 poderiam ser:

  • "Peça ao usuário que informe uma despesa (ou digite 0 para encerrar)."

Isso evita que o usuário fique confuso sem saber como finalizar a soma. Parabéns pela excelente estruturação lógica!

Qual seria o próximo passo se você quisesse que o sistema, além do total, também mostrasse a média de valor das despesas informadas?

Evandro, penso que assim ficaria melhor a leitura:

Iniciar o sistema.
Definir totalDespesas = 0
Definir quantidadeDespesas = 0

Solicitar ao usuário que informe uma despesa (ou digite 0 para encerrar).

Ler valor
Enquanto valor ≠ 0:
totalDespesas ← totalDespesas + valor
quantidadeDespesas ← quantidadeDespesas + 1
Solicitar próxima despesa.
Ler valor

Se quantidadeDespesas > 0 então:

média ← totalDespesas ÷ quantidadeDespesas
Exibir totalDespesas
Exibir média
Senão:
Exibir "Nenhuma despesa registrada"

Encerrar o sistema.