martes, 24 de enero de 2023

Número de ceros finales del resultado de $m!$

Una sencilla cuestión que puede despertarnos una cierta curiosidad es la siguiente: ¿Es posible determinar el número de ceros en que acaba el resultado de una multiplicación con números enteros, sin tener que realizar el cálculo de la misma?. La respuesta es afirmativa. Lo cual podemos demostrar mediante un sencillo razonamiento.

La idea clave es la siguiente: al realizar la multiplicación de varios números enteros, pongamos que $e_1\cdot e_2 \cdot \ldots \cdot e_n$, bien podremos expresar dicha multiplicación de la forma $a\cdot 10^k$, donde $k$ es, desde luego, un número entero no negativo y $a$ un número entero no divisible por $10$; entonces, resulta evidente que el número de ceros finales del resultado es igual al exponente $k$ del segundo factor, que es una potencia de diez. Para expresar la operación de esta manera, deberemos tener en cuenta que, como el número $10$ de la potencia es $10=2\cdot 5$, el exponente $k$, habrá de ser tal que éste sea igual al $\text{mín}(r,s)$, donde $r$ representa el exponente del factor $2^r$, y $s$ el exponente de $5^s$, que encontraremos en la factorización de los multiplacandos. A continuación, voy a exponer un par de ejemplos con números cómodamente manejables, para que esta idea quede bien clara. En especial, el segundo, que es el caso del cálculo del factorial de un número entero no negativo, nos llevará a un interesante resultado.

Ejemplo 1

¿Cuál es el número final de ceros de la operación $42\cdot 54 \cdot 25$?. Procedamos como hemos indicado arriba, recurriendo para ello a la descomposición factorial de los multiplicandos:
$42\cdot 54 \cdot 25=$
  $=(7\cdot 2 \cdot 3) \cdot (3^3\cdot 2)\cdot (5\cdot 5)$
    $=(7\cdot 3^4) \cdot (2\cdot 5)^2$
      $=(7\cdot 3^4) \cdot 10^2$
Luego al ser $k=2$, éste es el número de ceros finales del resultado, como puede comprobarse fácilmente.

-oOo-

Ejemplo 2

¿Cuál es el número final de ceros del resultado de la operación factorial de $8$?. Teniendo en cuenta que el factorial de un número entero no negativo, $m$, es la multiplicación recurrente $m!:=m\cdot (m-1)!$, siendo $0!=1$, se tiene que:
$8!=8\cdot 7\cdot 6 \cdot 5 \cdot 4 \cdot 3 \cdot 2 \cdot 1=$
  $=2^3\cdot 7 \cdot (2\cdot 3) \cdot 5 \cdot 4 \cdot 3 \cdot 2 \cdot 1$
    $=2^7\cdot 3^2 \cdot 5^1 \cdot 7$
      $=3^2 \cdot 7 \cdot 2^7 \cdot 5^1$
        $=3^2 \cdot 7 \cdot 2^6 \cdot (2\cdot 5)^1$, habida cuenta de que $\text{mín}(7,1)=1$, que es el valor del expoente $k$ de la potencia de diez
        $=3^2 \cdot 7 \cdot 2^6 \cdot 10^1$
Luego al ser $k=1$, éste es el número de ceros finales del resultado, como puede también puede comprobarse fácilmente, multiplicando paso a paso, o, más cómodamente con una calculadora que disponga de la función factorial.

Observaciones importantes acerca de la obtención del número de ceros finales en el caso del resultado del factorial de $m$

Observación 1

Notemos que, como el número de múltiplos de $2$ de un número $m$ del cual queremos calcular su factorial (y que no es otra cosa que el valor de $r$) es mayor que el número de múltiplos de $5$ de $m$ (y que, desde luego, es igual a $s$), deducimos de ello que $k=\text{mín}(r,s)=s$, luego podemos facilitar el cálculo de $k$, que es igual a $s$, calculando directamente esta cantidad (el número de múltiplos de $5$), para lo cual basta obtener la parte entera de $\dfrac{m}{5}$ —véase, para mayor comprensión de ésto, este artículo de otro de mis blogs—, y que se suele denotar como $\left[\dfrac{m}{5}\right]$, esto es, el cociente de la división euclídea $m\div 5$. En el ejemplo anterior, vemos que al realizar la división $8 \div 5$ se obtiene cociente igual a $1$ y resto igual a $3$, luego $k=\left[\dfrac{8}{5}\right]=1$; es decir, llegamos a la misma conclusión: $8!$ acaba en un solo cero, como ya habíamos deducido de la otra manera, más rudimentaria.

Esta otra forma de determinar el número de ceros finales es mucho más eficiente, en especial cuando el número del cual queremos calcular su factorial es un poco más grande. Así, por ejemplo, podemos comprobar —de las dos maneras— que el número de ceros finales de $11!$ es dos. Podemos ver que, procediendo según lo que primero he expuesto, el proceso es un poco más arduo, al manejar las potencias de los factores primos; sin embargo, de la segunda manera, es inmediato: $k=\left[\dfrac{11}{5}\right]=2$

Observación 2

Si el número $m$ del cual queremos obtener el número de ceros finales de su factorial es mayor o igual que $25$, se tiene que al ser $25=5\cdot 5$, además de calcular $\left[\dfrac{m}{5}\right]$, deberemos contabilizar, también, la parte entera $\left[\dfrac{m}{5^2}\right]$ ya que, ahora, $k=\left[\dfrac{m}{5}\right]+\left[\dfrac{m}{5^2}\right]$, de acuerdo con la idea central alrededor de la que nos estamos moviendo. Así, por ejemplo, el número de ceros finales de $26!$ es $k=\left[\dfrac{26}{5}\right]+\left[\dfrac{26}{5^2}\right]=5+1=6$. Desde luego, esto no podremos comprobarlo —realizando expresamente el cálculo de $26!$— con una calculadora científica básica, pues ésta fuerza la expresión del resultado en punto/coma flotante (por carecer su procesador de los suficientes registros de memoria interna); sin embargo, sí podemos hacerlo con cualquier herramienta CAS, como, por ejemplo, WolframAlpha o MAXIMA, que sí mostraran el resultado en notación usual. En efecto, podemos ver que $26!=403\,291\,461\,126\,605\,635\,584\,000\,000$.

De manera parecida, si el número $m$ es mayor o igual que $5^3=125$, se tiene que, además de calcular $\left[\dfrac{m}{5}\right]$ y $\left[\dfrac{m}{5^2}\right]$ , deberemos contabilizar, también, la parte entera $\left[\dfrac{m}{5^3}\right]$ ya que, ahora, $k=\left[\dfrac{m}{5}\right]+\left[\dfrac{m}{5^2}\right]+\left[\dfrac{m}{5^3}\right]$. Así, por ejemplo, el número de ceros finales de $127!$ es $k=\left[\dfrac{127}{5}\right]+\left[\dfrac{127}{5^2}\right]+\left[\dfrac{127}{5^3}\right]=25+5+1=31$. Podremos comprobarlo realizando expresamente el cálculo de $127!$ (yo lo he realizado con WolframAlpha):
      $127!=$
      $=3012660018457659544809977077527059692324164918673621 \gg$
      $799053346900596667207618480809067860692097713761984609 \gg$
      $77994577278396556385103330077232629777308785186998250027066179124412259762176 \gg$
      $000\,000\,000\,000\,000\,000\,000\,000\,000\,0000$
donde pueden apreciarse, al final, los $31$ ceros (finales) previstos.

A modo de conclusión

Por consiguiente, fácilmente podemos generalizar lo anterior, de manera que, si $5^{\alpha} \le m \lt 5^{\alpha+1}$, donde $\mathbb{Z} \ni \alpha \ge 0$, tendremos que el número de ceros finales es igual a $k=\left[\dfrac{m}{5}\right]+\left[\dfrac{m}{5^2}\right]+\ldots+\left[\dfrac{m}{5^{\alpha}}\right]$, que podemos expresar también de una forma más compacta como $$\displaystyle k=\sum_{j=1}^{\alpha}\,\left[\dfrac{m}{5^j}\right]$$ $\diamond$