Factorial

Calcula n! para enteros no negativos.

{{ factorialCalc.message }}

Descripción

El concepto de factorial aparece por primera vez en fuentes matemáticas indias del siglo VI d.C., en las obras del astrónomo Varāhamihira, quien usaba permutaciones de ingredientes en contextos prácticos. En Occidente, el matemático británico Fabian Stedman documentó, en 1677, la relación entre factorial y permutaciones en el contexto del repique de campanas — el intercambio ordenado de campanas en las torres de las iglesias inglesas, un arte musical colectivo cuyo objetivo era hacer sonar cada posible secuencia de n campanas exactamente una vez. El símbolo n! fue introducido por el matemático francés Christian Kramp en 1808, una elección de notación que se convirtió en estándar universal. La definición formal incluye 0! = 1 — un resultado que parece contraintuitivo pero es coherente: hay exactamente una forma de organizar cero objetos, que es no hacer nada. Leonhard Euler generalizó el factorial a números no enteros con la función Gamma (Γ), definida en 1729: Γ(n) = (n-1)! para enteros positivos, pero válida para cualquier número complejo excepto los enteros negativos.

El factorial aparece en prácticamente todas las áreas de las matemáticas combinatorias. Permutaciones: el número de formas de ordenar n objetos distintos es n!. Combinaciones: C(n,k) = n! / (k! × (n-k)!) — la fórmula que hay detrás del triángulo de Pascal y del binomio de Newton. Probabilidad: una baraja de 52 cartas puede barajarse de 52! ≈ 8,07 × 10^67 formas distintas — un número tan grande que es estadísticamente improbable que dos barajas hayan sido barajadas en el mismo orden en toda la historia de la humanidad. En análisis de algoritmos, el factorial aparece en la complejidad O(n!), que describe los algoritmos de fuerza bruta para el Problema del Viajante de Comercio y otros problemas NP-difíciles.

El desafío computacional del factorial es instructivo: los valores crecen tan rápido que superan la capacidad del tipo double de punto flotante de 64 bits (IEEE 754) en 171! — por eso esta herramienta limita el cálculo a n ≤ 170, donde 170! ≈ 7,26 × 10^306 todavía cabe en un double. La aproximación de Stirling (1730), desarrollada por James Stirling, ofrece una excelente estimación logarítmica especialmente útil en el análisis teórico cuando el factorial aparece dentro de expresiones más complejas. Para valores más grandes, lenguajes como Python ofrecen enteros de precisión arbitraria y calculan 1000! de forma exacta — un número con 2.568 dígitos — sin ningún desbordamiento. Si solo necesitas el resultado rápido de un n! específico, introduce el valor y obtén el resultado y su notación científica de inmediato.

Detalle técnico

Ideas claras antes de usar la herramienta

  • ¿Para qué sirve esta herramienta?: Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.
  • ¿Se envían mis datos a algún servidor?: El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.
  • ¿Puedo usarlo con datos reales en producción?: Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.

Fragmento corto para probar

  • Debajo aparece también el ejemplo largo en "Fragmentos de Código"; pega esta versión corta: Ejemplo — 5! = 120

Fragmentos de Código

Ejemplo de código
5! = 120

Ejemplo

5! = 120

Preguntas frecuentes

¿Para qué sirve esta herramienta?

Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.

¿Se envían mis datos a algún servidor?

El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.

¿Puedo usarlo con datos reales en producción?

Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.