Why not just use mathematical functions to solve this?? :)
Basically we calculate numbe of digits with log10 and round upwards. Then we sort of devide the number into two parts, one with all digits up to start+count and same number but with everything between start and start+count canceled to zero. Now we can simply subtract these two numbers and get the digits we were after. Fast and efficient :)
It works!
Personally, if I was giving out the awards, I think I'd give to YOU!
What I like about it is that you kept it consistantly numeric without resorting to a string. Very nice...
I gave myself the same personal challange but was thinking along the (very convoluted) lines of outptting the long in some base, say hex, and then using a recursive algorithm to pull one digit at a time. I failed dismally...
I'm just a beginner.
I hope you are a professional at this so I don't feel so bad...