I have much more experience programming than I do with advanced mathematics, so perhaps this is just a comfort thing with me, but I often get frustrated when I try to follow mathematical notation. Specifically, I get frustrated trying to keep track of what each variable signifies.

As a programmer, this would be completely unacceptable no matter how many comments you added explaining it:

`float A(float P, float r, float n, float t) { return P * pow(1 + r / n, n * t); }`

Yet a mathematician would have no problem with this:

A=P (1+rn)nt

where

A = final amount

P = principal amount (initial investment)

r = annual nominal interest rate (as a decimal)

n = number of times the interest is compounded per year

t = number of yearsSo why don’t I ever see the following?

final_amount=principal(1+interest_rateperiods_per_yr)periods_per_yr⋅years

**Answer**

I think one reason is that often one does *not* want to remember what the variable names really represent.

As an example, when we choose to talk about the matrix (aij) instead of the matrix (TransitionProbabilityij), this expresses the important fact that once we have formulated our problem in terms of matrices, it is perfectly safe to forget where the problem came from originally — in fact, remembering what the matrix “really” describes might only be unnecessary psychological baggage that prevents us from applying all linear-algebraic tools at our disposal.

(As an aside, have you ever seen code written by a mathematician? It very often looks exactly like your first example.)

**Attribution***Source : Link , Question Author : eater , Answer Author : Dan Petersen*