1
resposta

Aprovando empréstimo

renda = float(input("Digite o valor da sua renda mensal: "))
parcela = float(input("Digite o valor da parcela desejada: "))

if renda > 2000 and parcela <= 0.3 * renda:
    print("Empréstimo aprovado!")
elif renda <= 2000:
    print("Empréstimo negado: renda insuficiente.")
else:
    print("Empréstimo negado: parcela acima de 30% da renda.")
1 resposta

Olá, Juliana. Como vai?

O seu código está excelente e resolve o problema de análise de crédito com muita precisão! A forma como você estruturou as condições demonstra um ótimo entendimento de como combinar operadores lógicos (and) e operadores aritméticos (0.3 * renda) em Python.

Analisando a sua lógica de negócio, o fluxo está impecável:

  • O primeiro if garante que o cliente atenda aos dois pré-requisitos simultaneamente (renda mínima e parcela saudável).
  • O elif captura isoladamente quem falhou pelo critério de renda baixa.
  • O else acolhe perfeitamente a última possibilidade restante, que são as pessoas com renda superior a R$ 2000, mas cuja parcela compromete mais de 30% dos seus ganhos.

Para complementar os seus estudos e agregar ainda mais valor a esse projeto de análise financeira, podemos aplicar uma boa prática de refatoração para deixar o código mais legível e fácil de dar manutenção.

No mercado, costumamos evitar colocar cálculos complexos ou números fixos (como 0.3 e 2000) direto dentro do teste do if. Isolar esses valores em variáveis descritivas torna o script muito mais elegante e fácil de entender para outros desenvolvedores.

Veja um exemplo de como o seu código pode ser refatorado aplicando essa boa prática:

renda = float(input("Digite o valor da sua renda mensal: "))
parcela = float(input("Digite o valor da parcela desejada: "))

# Boas práticas: isolando as regras de negócio em variáveis explicativas
RENDA_MINIMA = 2000.0
PERCENTUAL_MAXIMO_PARCELA = 0.3

limite_maximo_parcela = renda * PERCENTUAL_MAXIMO_PARCELA
renda_valida = renda > RENDA_MINIMA
parcela_valida = parcela <= limite_maximo_parcela

# Executando o teste com variáveis limpas
if renda_valida and parcela_valida:
    print("Empréstimo aprovado!")
elif not renda_valida:
    print(f"Empréstimo negado: renda deve ser maior que R$ {RENDA_MINIMA:.2f}.")
else:
    print(f"Empréstimo negado: a parcela de R$ {parcela:.2f} ultrapassa o limite permitido de R$ {limite_maximo_parcela:.2f} (30% da renda).")

Dica de formatação: Note que no print do else foi utilizada a formatação :.2f. Ela é uma excelente prática em Python para exibir valores monetários, pois força o programa a mostrar exatamente duas casas decimais após a vírgula (ex: R$ 600.00), deixando a resposta do sistema muito mais profissional para o usuário final.

Parabéns pela excelente estrutura do script e por continuar praticando as estruturas condicionais de forma tão aplicada!

Espero que possa ter lhe ajudado!