Is there a way to find the number of trailing zeroes in a factorial with a certain base? I have a number $k$, and I need to find the number of trailing zeros $k!$ (factorial) has when put into base $b$. I need a general way that will work for all $b$'s and $k$'s. 
I have tried making variations of the method used for $b=10$, but this has not worked much. The method specifically for $b=10$ is to take the floor of $\dfrac{k}{5^1}$, then to do the take the result and do the same $\left(\dfrac{\frac{k}{5}}{5}\right)$ and keep doing this until the results are under 1. The number of trailing zeros would then be the sum of all these results.
Is there a general way to do something similar for $k!$ in base $b$?
 A: Let's suppose our base is $b = p_1^{e_1}p_2^{e_2} \cdots p_k^{e_n}$, where the $p_i$ are prime numbers.  The number of trailing zeros of a given number $K$ is the maximum number $m$ such that $b^m = p_1^{e_1m}p_2^{e_2m}\cdots p_n^{e_nm}$ divides $K$.  
Let $K = k!$.  Then, if we express $k! = q_1^{f_1}q_2^{f_2}\cdots q_r^{f_r}$ as a product of primes $q_i$, we have that the exponent $f_i$ is given by
$$f_i = \sum_{s=1}^\infty \left\lfloor\frac{n}{q_i^s} \right\rfloor$$
Now, in order for $b^m$ to divide $k!$, we require that $p_i^{e_i m}$ divides $k!$ for $i = 1,2,\cdots,n$.  The number of times that $p_i$ divides $k!$ is, by the previous argument,
$$\sum_{s=1}^\infty \left\lfloor\frac{k}{p_i^s} \right\rfloor$$
so, the maximum $m_i$ such that $p_i^{e_im_i}$ divides $k!$ is
$$m_i = \left\lfloor \frac{1}{e_i}\sum_{s=1}^\infty \left\lfloor\frac{k}{p_i^s} \right\rfloor\right\rfloor$$
Now, $m \le m_i$ for $i=1,2,\cdots,n$, since if $b^m$ divides $k!$, then certainly the factor $p_i^{e_i}$ does, as well.  By the maximality of $m$, we can conclude that
$$m = \min_{i=1,2,\cdots, n} m_i = \min_{i=1,2,\cdots, n} \left\lfloor \frac{1}{e_i} \sum_{s=1}^\infty \left\lfloor\frac{n}{p_i^s}\right\rfloor\right\rfloor$$
is the number of trailing zeros when $k!$ is expressed in base $b$.

As an example, let's see how many trailing zeros $16!$ (expressed in the usual base $10$) has in base $b = 12$.  We have that $b = 2^2\cdot 3$, so $p_1 = 2$, $p_2 = 3$, and $e_1 = 2$, $e_2 = 1$.  Now, we can compute
$$m_1 = \left\lfloor \frac{1}{2}\sum_{s=1}^\infty \left\lfloor\frac{16}{2^s}\right\rfloor\right\rfloor = \left\lfloor \frac{8+4+2+1}{2}\right\rfloor = 7$$
$$m_2 = \left\lfloor \frac{1}{1}\sum_{s=1}^\infty \left\lfloor\frac{16}{3^s}\right\rfloor\right\rfloor = 5 + 1 = 6$$
so $16!$ (again, in decimal) has
$$m = \min\{7,6\} = 6$$
trailing zeros when expressed in base $12$.  We can check this in WolframAlpha, which tells us that
$$(16!)_{10} = 241ab88000000_{12}$$
indeed has $6$ trailing zeros.
