Questions on Stack Overflow are expected to relate to programming within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.
If this question can be reworded to fit the rules in the help center, please edit the question.

@Scott — I would content that neither of those statements are true. Modulus is typically defined in terms of division, but that doesn't make it division. Ditto for division != subtraction.
–
Ben BlankJun 22 '09 at 18:02

Well, the result is the same as if a subtraction had been done, but you'll see the example uses a +=, so it's a plus. But, the effect is the same as if a subtraction had been done. But, you could argue the effect of any other answer to this question is to have subtracted 1... so you could also say this answer is essentially the same as 'adding and recursion', which is the accepted answer. Or you could say it's essentially the same as prepending numbers into a string buffer or whatever. :)
–
Scott LanghamJun 21 '09 at 20:36

I like Dylan Bennett's idea - simple, pragmatic and it adheres to the K.I.S.S principle, which IMHO is one of the most important concepts we should always try to keep in mind when we develop software. After all we write code primarily for other human beings to maintain it, and not for computers to read it. Dylan's solution in good old C: