I cheesed out on this one, pretty much just did what the problem called for. No magic. Looking through the forums, however, it was pretty much par for the course.
Find the sum of the digits in the number 100!
product, sum = 1, 0 100.times do |i| product *= i + 1 end while product > 0 sum += (product /= 10) % 10 end puts sum