1
resposta

Faça como eu fiz: cálculo de juros para diferentes perfis de empréstimo

public interface IEmprestimo
{
decimal CalcularValorFinal(decimal valor, int meses);
}


public class EmprestimoEstudante : IEmprestimo
{
public decimal CalcularValorFinal(decimal valor, int meses)
{
    var valorFinal = valor + (valor * 0.01m * meses); 
    return valorFinal;
}
}


 public class EmprestimoEmpresario : IEmprestimo
 {
 public decimal CalcularValorFinal(decimal valor, int meses)
 {
     var valorFinal = valor + (valor * 0.025m * meses); 
     return valorFinal;
 }
 }
 
 
 public class EmprestimoAposentado : IEmprestimo
 {
 public decimal CalcularValorFinal(decimal valor, int meses)
 {
     var valorFinal = valor + (valor * 0.015m * meses); 
     return valorFinal;
 }
 }
 
 
 List<IEmprestimo> perfis = new List<IEmprestimo>
{
new EmprestimoEstudante(),
new EmprestimoEmpresario(),
new EmprestimoAposentado()
};

foreach (var perfil in perfis)
{
decimal total = perfil.CalcularValorFinal(1000m, 12);
Console.WriteLine($"Valor final do empréstimo para {perfil.GetType().Name}: {total:C}");
}
1 resposta

Olá, Jonas, como vai?

A implementação que você desenvolveu demonstra um ótimo domínio sobre o conceito de interfaces e polimorfismo em C#. Ao criar a interface e as classes específicas para cada perfil de cliente, você garantiu que o sistema seja facilmente extensível, permitindo a adição de novas modalidades de empréstimo sem alterar o código que percorre a lista de perfis. A utilização dos valores decimais literais com o sufixo m assegura a precisão necessária para cálculos financeiros.

Parabéns pela dedicação no exercício e por compartilhar sua solução com a comunidade.

Continue com esse foco nos estudos e o fórum está a disposição.

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