:- use_module(library(clpr)).

% Hypothekenberechnung
% Parameter:
% P: Kapital
% T: Laufzeit in Monaten
% IR: monatliche Zinssatz (z.B. 0.01)
% B: Restbetrag nach Ende der Laufzeit
% MP: monatliche Rueckzahlung

mortgage(P,T,IR,B,MP) :-
        { T>=0, T=<1, B = P*(1 + IR*T) - MP*T }.
        
mortgage(P,T,IR,B,MP) :-
        { T>1 },       
        mortgage(P * (1+IR) - MP, T-1, IR, B, MP).
