Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Desafio: Calculadora de despesas

Algoritmo em linguagem natural

Pra resolver isso, pensei da seguinte forma: eu não sei quantas despesas a pessoa vai digitar, então preciso de um jeito de repetir a pergunta várias vezes até ela decidir parar. Um jeito simples de sinalizar "parar" é digitar 0.

Criar uma variável para guardar o total, começando em 0.
Perguntar ao usuário o valor da primeira despesa.
Enquanto o valor digitado for diferente de 0, repetir:
Somar esse valor ao total.
Perguntar o próximo valor de despesa.
Quando o usuário digitar 0, parar de perguntar e mostrar o total acumulado na tela.

A ideia central é um laço de repetição condicionado à entrada do usuário ele continua rodando até que a condição de parada (digitar 0) aconteça, por isso funciona mesmo sem saber quantas despesas serão informadas.

total_gasto = 0

despesa = float(input("Digite o valor da despesa (0 para terminar): "))

while despesa != 0:
total_gasto = total_gasto + despesa
despesa = float(input("Digite o valor da despesa (0 para terminar): "))

print("Total de despesas do mes:", total_gasto)

1 resposta

Boa noite, Gusttavo!

Gostei demais da sua resolução, continue assim!

Mandou muito bem ao pensar primeiro em linguagem natural, estruturar o raciocínio com a ideia de laço de repetição e depois traduzir para código em Python. Essa abordagem mostra domínio do pensamento computacional: decompor o problema, definir a condição de parada e implementar de forma clara.

O uso do while com a condição despesa != 0 é perfeito para esse caso, já que você não sabe quantas entradas o usuário vai fornecer. Além disso, a inicialização da variável total_gasto em 0 garante que o acumulador funcione corretamente.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Validação de entrada: garantir que o usuário não digite valores negativos ou inválidos.
  • Feedback parcial: mostrar o total acumulado a cada nova despesa digitada, para dar mais transparência.
  • Flexibilidade: permitir que o usuário informe uma palavra-chave como "fim" em vez de apenas o número 0.

Continue postando suas soluções! Além de ganhar pontos de XP na plataforma, você ajuda outros estudantes a entenderem como aplicar lógica de repetição em problemas práticos.

Uma pergunta: você acha mais interessante manter esse algoritmo simples e direto ou expandir para incluir categorias de despesas (alimentação, transporte e lazer) e gerar um relatório mais detalhado no final?

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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