Olá, professor! Tudo bem?
O if(resultado > 50M) não poderia ser mantido como if(descontoInicial > 50M)?
Mesmo que o resultado esteja recebendo o valor de descontoInicial, digamos que antes do if a variável resultado tenha sido manipulada de alguma forma, não seria seguro utilizar o valor da variável recebida como parâmetro para assegurar a condicional?
class CalculadoraDePrecos
{
decimal GetDescontoFinal(decimal descontoInicial, int quantidade, int clienteHaQuantosAnos)
{
decimal resultado = descontoInicial;
//suponhamos que a variável resultado tenha sido manipulada aqui, por qualquer motivo...
if (resultado > 50M) //essa condição não deveria mater o parâmetro descontoInicial?
{
resultado = 50M;
}
if (quantidade > 100)
{
resultado += 15M;
}
if (clienteHaQuantosAnos > 4)
{
resultado += 10M;
}
return resultado;
}
}
Obrigado!