I am a programmer interning at a small contract furniture company. This company receives multiple discounts from the manufacturers, and I am trying to calculate the end discount. For example, the first discount is 50%, the second discount is 20% off that price, and the third is 20% of that, then the total discount is 68%. They already have an Excel worksheet that calculates this, but I want to write a recursive function that can perform this calculation as many times as is necessary. My question is; what is this type of discounting called?
Asked
Active
Viewed 44 times
1 Answers
0
This is in general simply referred to as compounding. In functional terms, consider the inefficient python code below
def total_discount(rates):
return (1.0 - discount(1.0, rates))*100.0
def discount(original, rates):
if len(rates) == 1:
return (1.0-rates[0]/100.0)*original
else:
return (1.0-rates[0]/100.0)*discount(original, rates[1:])
This type of thing is often seen in forward rates.
user25064
- 1,077
- 6
- 16