/* * Auto Payment Calculator V1.0.1beta * Copyright (C) 1997 Eric A. Griff * * An Auto Payment Calculator. * * *Portions of this code use xforms-0.86 which is copyrighted as * * Copyright (C) 1996-1997 by T.C. Zhao and Mark Overmars. ALL RIGHTS * RESERVED * */ #include "mathfun.h" double pmt(principal,rate,term) double principal; float rate; int term; { double pmnt; rate = (float) (((int)(rate*1000000.0))/1000000.0); pmnt = (principal * ((double)rate)) / (1 - powf((1+rate), -((float)term))); #ifdef FOUR pmnt = ((int)(pmnt * 10000.0))/10000.0; #else pmnt = ((int)(pmnt * 100.0))/100.0; #endif return pmnt; } double wpmt(principal,rate,months) double principal; double rate; int months; { int numPayments; double payment; double perPaymentRate; numPayments = (int)((((float)months)*4.3333333)+.5); fweeks = numPayments; perPaymentRate = (((float)rate)/52)*.01; payment = pmt(principal,perPaymentRate,numPayments); return payment; } double mpmt(principal,rate,months) double principal; double rate; int months; { return pmt(principal,(((float)rate)/12)*.01,months); }