1
resposta

[Projeto] Algoritmo para somar despesas mensais (com parada por valor zero)

Entrada necessária
Valores das despesas informados um a um pelo usuário (números reais/decimais)

Saída esperada
Total gasto no mês (soma de todos os valores informados)

Algoritmo em linguagem natural
text
INÍCIO

  1. DEFINIR variável soma_total = 0

  2. REPETIR:

    a. SOLICITAR ao usuário: "Informe o valor da despesa (ou digite 0 para encerrar):"

    b. LER o valor informado e armazenar em valor_despesa

    c. SE valor_despesa == 0:
    INTERROMPER a repetição (sair do loop)
    SENÃO:
    ADICIONAR valor_despesa à soma_total
    (opcional: EXIBIR "Despesa de R$ X adicionada com sucesso")

  3. APÓS sair do loop, EXIBIR:
    "Total de despesas do mês: R$" + soma_total

FIM
Exemplo de execução passo a passo
Passo Ação Valor digitado soma_total
Início - - 0,00
1 Usuário digita 150,00 150,00
2 Usuário digita 89,90 239,90
3 Usuário digita 35,50 275,40
4 Usuário digita 12,75 288,15
5 Usuário digita 0 → interrompe
Resultado exibido: Total de despesas do mês: R$ 288,15

Fluxograma visual
text
INÍCIO

soma_total = 0

┌─────────────┐
│ Pedir valor │
│ ao usuário │
└──────┬──────┘

┌─────────────┐
│ Ler valor │
└──────┬──────┘

valor == 0 ?
↙ ↘
SIM NÃO
↓ ↓
Sair soma_total += valor
loop ↓
↓ Retornar ao pedido
└──────────┘

Exibir soma_total

FIM
Variação com validação (tratando entradas inválidas)
Caso o usuário digite um valor negativo por engano:

text
INÍCIO

  1. soma_total = 0

  2. REPETIR:

    a. SOLICITAR valor da despesa (0 para encerrar)

    b. LER valor_despesa

    c. SE valor_despesa < 0:
    EXIBIR "Valor negativo ignorado. Digite um valor positivo."
    CONTINUAR (voltar ao início do loop)
    d. SE valor_despesa == 0:
    INTERROMPER loop
    SENÃO:
    soma_total = soma_total + valor_despesa

  3. EXIBIR "Total: R$" + soma_total

FIM
Características importantes deste algoritmo
Característica Explicação
Número indefinido de iterações O usuário decide quantas despesas informar
Condição de parada Valor digitado igual a zero (sentinela)
Acumulador Variável soma_total que guarda o resultado parcial
Simplicidade Não é necessário perguntar "quantas despesas você tem?"
Este algoritmo é um exemplo clássico de estrutura de repetição com condição de saída no meio do loop (do-while em muitas linguagens).

1 resposta

Oi, Marcus, como vai?

A solução entregue vai bem além do que a atividade pede, e isso é algo que vale reconhecer. A presença do fluxograma visual, da tabela com exemplo de execução passo a passo e da variação com validação de valores negativos mostra uma preocupação real em cobrir casos de uso que o enunciado nem chegou a mencionar.

Parabéns pela entrega e obrigado por compartilhar com tanto detalhe.

O fórum está à disposição sempre que precisar.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!