Drill

ProblemsGo › finance

Balance after yearly compounding

easyfinanceMathSimulationGo

An account reinvests its interest once a year. Report the balance after a whole number of years.

compoundBalance(principal: int, ratePercent: int, years: int) → int

Go needs a compiler and Drill does not host one yet, so this page is the reference rather than an exercise: the problem, worked examples, and the solution in full. To type it out, the same problem runs in Python.

Solve it in Python →

Where you start

func compoundBalance(principal int, ratePercent int, years int) int {
	
}

Worked examples

CallResult
compoundBalance(1000, 10, 2)1210
compoundBalance(100, 5, 3)115
compoundBalance(5000, 0, 5)5000
compoundBalance(0, 10, 5)0

Hint

Loop the years, adding the floored interest each pass.

Reference solution in Go
func compoundBalance(principal int, ratePercent int, years int) int {
	balance := principal
	for i := 0; i < years; i++ {
		balance += balance * ratePercent / 100
	}
	return balance
}

The same problem in another language

More finance problems in Go