# Understanding the log() function

## Homework Statement

Working on a computer program that will create an amortization table (a table that lists each payment on an amortizing loan). I am going to use a simple c++ array to store each row of data, and need to know the number of months required to pay off a given loan so that i know the number of rows needed to initialize in the array.

I searched the internet for a formula to calculate this value (time in months to pay off the loan).

## Homework Equations

This is the equation I found:
T = -log(1 - I x L / P) / log(1 + I)

in LaTeX:

$$T = \frac{- log(1-I \times L)}{log(1+I)}$$

Where
T is the time to pay off the loan (in months)
I is the monthly interest rate
P is the amount of each payment

## The Attempt at a Solution

I can take it on blind faith that this works, but I'd rather not. What seems like a simple, straightforward calculation is confusing me because of the nature of the log() function. What IS its function? What is its purpose in this equation? What is it doing here? HOW DOES IT WORK?

This question has been with me for some time and this seems the perfect opportunity to finally understand it. Any help would be greatly appreciated.

Last edited:

Simon Bridge
Homework Helper
$$T = \frac{- \log(1-IL/P)}{\log(1+I)}$$
[...]
I can take it on blind faith that this works, but I'd rather not. What seems like a simple, straightforward calculation is confusing me because of the nature of the log() function.
Do you mean the logarithm in the above relation or the log() function in C++ ?

What IS its function? What is its purpose in this equation? What is it doing here? HOW DOES IT WORK?
... ah, guessing the former.

This problem arises because you didn't derive the equation, instead, you looked it up... therefore you do not understand the relation.

These finance equations involving interest often end up with exponential functions of time - if you want to solve these equations for time, you need an inverse exponential function. That is the role of the logarithm.

In this case the derivation probably used the property $\log{(a^b)}=b\log{(a)}$ to extract the T from an exponent - since:$$(1+I)^T=\frac{1}{1-IL/P}$$

Thank you so much! Looking at it that way (as a tool used to manipulate an equation) makes so much sense.

Simon Bridge
Homework Helper
In the bad old days, that's what we mostly used logs for ... if I wanted to multiply two hard numbers, AxB say, I'd use log(AB)=log(A)+log(B) and look up the logs of A and B in a set of tables - add them to get log(AB) - then find the antilogarithm of that (another set of tables) to get the product.

Serious engineering was done with this sort of math.

Mark44
Mentor
In the bad old days, that's what we mostly used logs for ... if I wanted to multiply two hard numbers, AxB say, I'd use log(AB)=log(A)+log(B) and look up the logs of A and B in a set of tables - add them to get log(AB) - then find the antilogarithm of that (another set of tables) to get the product.

Serious engineering was done with this sort of math.
This is also the basis of how multiplication works on a slide rule. The lengths you add correspond to the logs of the numbers, and the result you get is the log of the answer. Division works in a similar way by subtracting lengths, using the formula log(A/B) = log(A) - log(B).

Simon Bridge
Homework Helper
They confiscated my slide rule ... I had to make do with a couple of twigs and a bit of wool pulled from my jersey... ah the days I spent hunched over my math, clutching the unravelling ends of my jersey with one hand while Mr Matthews drummed his fingers on the yellow box containing his strap...

Mark44
Mentor
You had twigs? What luxury! We dreamed of the day we would have a couple of nice twigs, let alone a jersey from which to pluck a tuft of wool.

(Apologies to Monte Python's Gentlemen's Club skit...)

Simon Bridge