1
resposta

Resolução de Atividades - "08 Controlando o orçamento mensal"

def controlador_orcamentario():

    try:
        limite_orcamento = 3000
        despesas_mensais = float (input ("Digite o total de despesas que o senhor teve nesse mês: R$"))

        limite_disponivel = limite_orcamento - despesas_mensais

        if  despesas_mensais > limite_orcamento:

            print (f"Atenção! O senhor ultrapassou o limite do orçamento estabelecido de R${limite_orcamento}!")
        
        else:

            print (f"O valor está dentro do orçamento. O senhor ainda tem R${limite_disponivel} disponíveis")

    except:
        print ("Erro! Digite apenas números, por favor\n")
        controlador_orcamentario()
    
controlador_orcamentario()
1 resposta

Olá, Victor, como vai?

Seu código cumpre bem a proposta da atividade. A função recebe o valor das despesas, compara com o limite definido e apresenta a mensagem adequada dependendo da condição. A utilização de if e else está correta para o cenário e o cálculo do valor restante do orçamento também foi aplicado de forma coerente.

Há apenas um ponto técnico que pode ser melhorado no tratamento de exceções. O uso de except: sem especificar o tipo de erro captura qualquer exceção possível, o que não é uma prática recomendada em Python. Nesse caso, como a entrada envolve conversão para número decimal, o mais adequado é tratar especificamente ValueError.

Um exemplo de ajuste seria:

except ValueError:
    print("Erro. Digite apenas números, por favor\n")
    controlador_orcamentario()

Obrigado por compartilhar sua solução no fórum e continue trazendo suas implementações para discussão. O fórum segue à disposição para ajudar no que precisar.

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