# CFLib.org – Common Function Library Project

## Periods(IR, PV, FV, PMT)

##### Last updated August 02, 2001

Version: 1 | Requires: CF5 | Library: FinancialLib

Description:
Calculate the number of payments for a loan when given the payment, interest rate, and value of the loan.

Return Values:
Returns a numeric value.

Example:

``````Number of Periods = <cfoutput>#Periods(0.08,20000,0,904.55)#</cfoutput>
``````

Parameters:

Name Description Required
IR Interest rate per year (8% = 0.08) Yes
PV Present Value Yes
FV Future Value Yes
PMT Payment Amount Yes

Full UDF Source:

``````/**
* Calculate the number of payments for a loan.
*
* @param IR      Interest rate per year (8% = 0.08)
* @param PV      Present Value
* @param FV      Future Value
* @param PMT      Payment Amount
* @return Returns a numeric value.
* @author Raymond Thompson (rayt@qsystems.net)
* @version 1, August 2, 2001
*/
function Periods(IR,PV,FV,PMT) {
var tir = ir / 12;
var scale = 0;
var np=0;
var tpv = -abs(pv);
var tfv = -abs(fv);
var tpmt = abs(pmt);

if(ArrayLen(Arguments) gt 4) {
scale = 10^abs(Arguments[5]);
}
np = log((-tfv * tir + tpmt) / (tpmt + tir * tpv)) / log(1 + tir);
if (scale NEQ 0)
np = int(np * scale + 0.5) / scale;
return(np);
}
``````

### Search CFLib.org

QueryDeleteRows
November 04, 2017

May 11, 2016

stripHTML
May 10, 2016

date2ExcelDate
May 05, 2016

CapFirst
April 25, 2016

Created by Raymond Camden / Design by Justin Johnson