Question about equation solving



Hello,
I have two slightly different equations :
*
4200=300*((1+r)^-1+(1+r)^-2+(1+r)^-3+(1+r)^-4+(1+r)^-5+(1+r)^-6)+4000*(1+r)^-7
4200=300*((1+r)^-1+(1+r)^-2+(1+r)^-3+(1+r)^-4+(1+r)^-5+(1+r)^-6)+4500*(1+r)^-7
*Notice towards the end : 4500 and 4000. That is the only difference.
Now: from a mathematical point of view, why is the first equation not easily
solved (some solutions are in C for example) whereas the second is easily
solved with a simple call to the solve function?
Thanks in advance,
Julien.