Pre - calc problem turned hard, easier method for this formula? I am constantly brain storming challenge questions for my pre calculus students. Today I came up with this question, but upon finding the answer I don't think this one will be feasible for my students.

Suppose during month zero your credit card balance is $b_0$. Sometime
  during month zero you make the minimum payment, say $p$. The next
  month the bank calculates your new
  balance by $b_0 - p + I(b_0 - p)$ where $I$ represents your interest.
  Assuming you always pay the minimum payment every month, $p$, and your
  interest $I$ stays fixed, a recursive function that gives your balance
  in month $n$ could be given by $f(0) = b_0$ and $f(n) = f(n-1)-p +
 I(f(n-1) - p)$ for $n \geq 1$. Find a closed form for the function
  $n$.

As always, I set out to make sure I could even solve the problem before giving it to my students as a challenge problem. My solution took me quite a while. Here is the answer I came up with, that could possibly be further simplified:

$$f(n) = \frac{p(1+I)^{n+1} - Ib_0(1+I)^n - P(1+I)}{-I}$$

My method was to start by writing out the first few terms using the recursive definition, then start rearranging and looking for patterns. After a while I was able to spot and prove a binomial expansion, and a geometric sum of binomials was occurring which yields my solution. I will currently not write my full derivation unless requested because it is long and mostly just symbol crunching. 

My question to the MSE community is, does anyone have a slick easy
  derivation of a solution to this problem? I did not thing it should be
  so tedious when I came up with it? Is there a better method?

I don't even know what to tag this, if anyone has any good suggestion for tags let me know.
 A: Rewrite the equation as
$$f_n = f_{n-1}-p + I(f_{n-1} - p)=(1+I)f_{n-1}-(1+I)p$$ 
$$f_n = \alpha f_{n-1}+\beta\qquad \text{where}\qquad \alpha=1+I\qquad \text{and}\qquad \beta=-(1+I)p $$ 
$$f_n = \alpha f_{n-1}+\beta\implies f_n =\beta\,\frac{  \alpha ^n-1}{\alpha -1}+c_1\, \alpha ^{n-1}$$ leading to $$f_0=\frac {c_1} \alpha=b_0 \implies c_1=\alpha\,b_0 $$ making $$f_n=\beta\,\frac{  \alpha ^n-1}{\alpha -1}+ \alpha ^{n}b_0$$ Now, replace $\alpha $ and $\beta$ by their definitions.
A: Ok! After finding out that this type of problem is well understood and falls under 'linear recurrence relations', I have spent the day learning about them and I am going to post a more detailed solution as an addendum to Claude's concise answer above.
First of all, this specific problem is an example of a non-homogeneous linear recurrence relation. In order to solve it, I will use methods that require knowing how to solve homogeneous linear recurrence relations which I will not elaborate on as much. 
We seek a solution (closed form) to the relation $$x_n = (1+I)x_{n-1} - P(1+I), \text{ for } n\geq 1  (*) $$ with initial value $x_0 = b_0$. This initial value uniquely determines the sequence $x_n$. The corresponding homogeneous linear recurrence relation is $$x_n = (1+I)x_{n-1}. (**)$$
It is a theorem that if $\{b_n\}$ is a particular solution to (*) (not necessarily satisfying the initial condition) and $\{c_n\}$ is the generic solution to (**) then the generic solution to (*) is of the form $b_n + c_n$. So we seek to find such a $b_n$ and $c_n$. 
For $c_n$, we use methods of solving homogeneous linear recurrence relations, in particular we find the characteristic polynomial of (**):
\begin{align*}
ar^n &= (1+I)ar^{n-1}\\
r &= (1+I)\\
r - (1+I) &= 0.\\ 
\end{align*}
The roots of this characteristic polynomial are apparent by inspection so we have the general solution to (**) $$c_n = k(1+I)^n, \text{ for some } k \in \mathbb{R}.$$
From my reading, finding a particular solution $b_n$ seems to be less systematic (in general), and it seems advised to guess something similar to the control term (which in our case is $-P(1+I)$. Since our control term is constant suppose we just guess $b_n = k_2$ ($k_2$ some constant) and use the definition of the relation (*) to solve for such a constant should one exists. We have:
$$k_2 = (1+I)k_2 - P(1+I) \implies k_2 = \frac{P(1+I)}{I}.$$
So set $b_n = k_2$, then we form the general solution $$x_n = c_n + b_n = k(1+I)^n + \frac{P(1+I)}{I}.$$ Recalling our initial condition $x_0 = b_0$ we evaluate and solve for $k$, $$x_0 = k + \frac{P(1+I)}{I} = b_0 \implies k = b_0 - \frac{P(1+I)}{I}$$.
Substituting back into our general solution yields our final solution:
$$\left(b_0 - \frac{P(1+I)}{I}\right)(1+I)^n + \frac{P(1+I)}{I} =$$ 

$$b_0(1+I)^n - \frac{P(1+I)^{n+1}}{I} + \frac{P(1+I)}{I} = x_n.$$

The really good news is that this is the original solution I found on my own with no theory at my disposal! I had a lot of fun learning about how to solve these recurrence relations today. 
