# --------------------------------------------------------------------------------------------------
#  -------------------------- 1. Exercício 2.1.17 das notas de aula, item B.------------------------
# --------------------------------------------------------------------------------------------------

# parte b) Um emprestimo de 114.900,00 reais é pago em 96 parcelas fixas mensais de 1.159,00 reais, com entrada
# de um cheque de R$11.000,00 para 1 de agosto e um de R$30.000,00 para 1 de setembro.
# Qual é a taxa de juros cobrada?
#
# Solução:
# A dívida é um função da taxa de juros cobrada; e deve se anular após 96 pagamentos com entrada de 1.159,00 e
# primeira parcela com adicional de R$30.000,00 e mensais de 1.159,00 reais.
# Definimos a função dívida 
divida<-function(r){           # Função dívida 
    p=73900                    # valor emprestado apos as entradas (11.000 + 30.000 = 41.000)
    for ( i in 1:96){
        p=p*(1+r)-1159       # juros mensal menos pagamento mensal
    } 
    return(p) # dívida no último pagamento em função de
}

curve(divida,0.005,0.01,col="blue",xlab="r",ylab="divida(r) no 96 mês") 

r=0.0091 # aproximação inicial

dndivida<-function(s){     # derivada numerica
h=10^(-5)
return((divida(s+h)-divida(s-h))/(2*h))} # Aproximação para a derivada de f

# Método de Newton (aproximado)

for ( i in 1:10){
    r=r-divida(r)/dndivida(r)
}

r;divida(r)
# Observe que com essa taxa a dívida fica
print("Divida a cada mes")
d0=73900           # Data de empréstimo
vetorDosMeses = c(d0)
for (i in 1:96){
    vetorDosMeses[i+1] <- vetorDosMeses[i]*(1+r)-1159
    cat("\nDivida restante no mes ",i,": ",vetorDosMeses[i])
    if(i == 96){
        cat("\nDivida restante no mes ",i+1,": ",vetorDosMeses[i+1])
    }
}
#print(vetorDosMeses)