Find the sum of the digits in the number 100! I am working on a Project Euler problem http://projecteuler.net/problem=20.

$n!$ means $n(n - 1)\dots...3.2.  1.$
For example, $10!$ $=$ $10$  $9$  $...$  $3$  $2$  $1$ $=$ $3628800$, and the sum of the
  digits in the number $10!$ is $3 + 6 + 2 + 8 + 8 + 0 + 0$ $=$ $27$.
Find the sum of the digits in the number $100!$

The crux of the problem is that, the number is just too big for native data types.
I could just use python / ruby or some language that has native large int types, but a lot of these problems have clever little tricks. 
My fist thought was just to mod 10 the answer over and over, but checking wolframalpha.com shows me that would only trim $24$ digits from the $158.$
My second thought is to make a little BCD implementation capable of adding and multiplying.
So I did a little research, I cant figure out any way to make the gamma function ant easier than the factorial...
I have run across things like Stirling's Approximation, but it seem calculating that would require more work than it is worth to make super sized functions.
so my question, I suppose: can this problem be digested in a way to be solved using only arbitrarily small numbers?
 A: Hint: One huge low-hanging fruit is that tons of those digits are going to be an enormous block of $0$'s at the front.
Use this fact to keep the magnitude of your answer under control as you compute.
A: I think that a way to add all the digits in hundred is add the even numbers then all the odd numbers. I tried this and it really worked out. Or another way is to keep on adding the number you started out with (small) and then taking a chart with all the numbers from 1 through 100 and ticking it of when you have reached the number or when you have came to this number. Example: 1,2,4.8,16,32,64. Thanks and I really wish that this helps you! Signing of, Srivacthi Nadar.
A: Interestingly, if you continue summing the digits for any integer factorial larger than or equal to 6, such that you end with a single digit, the answer will always be 9.
Reason is that any number divisible by 9, when written in decimal, has the property that its digit sum (when repeated until you have a single digit) is always 9.... and any factorial of any integer >= 6 includes 3*6 in the calculation, which is 18, which is divisible by 9.
Take the 27 solution you reached, gives 2+7 = 9
And Emily's answer of 40320, gives 4 + 3 + 2 = 9
