1
resposta

Aprovando empréstimo

Fiz o exercicio, mas ele só me disse negado ele não passou a informação do motivo de ter sido negado

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Mudei o código e foi
Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Estudante. Como vai?

Excelente iniciativa! Esse é um momento fundamental na jornada de quem programa: perceber que um código pode estar logicamente correto (funciona), mas não ser informativo para o usuário final.

No seu primeiro código, ao utilizar o operador and, você criou uma condição composta. O problema é que, se qualquer uma das partes for falsa, o programa cai direto no else, e o usuário fica sem saber se o problema foi a renda insuficiente ou o valor da parcela muito alto.

Ao mudar para a estrutura com elif, você aplicou o que chamamos de condicionais em cascata. Essa é uma das melhores formas de tratar validações, pois permite dar um feedback específico para cada erro.

Para complementar seu aprendizado, veja algumas boas práticas que você aplicou na segunda versão:

  • Variáveis Intermediárias: Você criou a variável limite_parcela. Isso é ótimo porque evita repetir o cálculo renda * 0.30 várias vezes, deixando o código mais limpo e rápido.
  • Hierarquia de Erros: Você primeiro checou a renda mínima e depois o limite da parcela. Essa ordem é lógica, pois se a pessoa não tem a renda mínima, nem precisamos calcular o valor da parcela.

Uma pequena dica para deixar o código ainda mais profissional é usar a formatação de moeda nas mensagens de erro. Veja um exemplo de como poderia ficar o seu print:

if renda <= 2000:
    print(f"Empréstimo negado: renda de R$ {renda:.2f} é inferior ao mínimo de R$ 2.000,00.")
elif parcela > limite_parcela:
    print(f"Empréstimo negado: parcela de R$ {parcela:.2f} excede o limite de R$ {limite_parcela:.2f} (30% da renda).")
else:
    print("Empréstimo aprovado.")

Essa mudança de postura — de apenas "fazer o código funcionar" para "fazer o código ser útil para quem usa" — é o que diferencia uma pessoa desenvolvedora iniciante de uma experiente. Parabéns pela percepção!

Espero que possa ter lhe ajudado!