Calculadora de exponenciación modular
Calcula (base^exponente) mod m de forma rápida y exacta usando exponenciación binaria por cuadrados.
Computed with exponentiation by squaring
¿Cómo funciona esta calculadora?
La exponenciación modular halla (base^exponente) mod m. En lugar de calcular la enorme potencia directamente, usa exponenciación binaria por cuadrados: eleva al cuadrado la base y divide a la mitad el exponente en cada paso, multiplicando al resultado en los bits a 1, reduciendo mod m en todo momento. Esto se ejecuta en unas log2(exponente) multiplicaciones y se mantiene exacto con enteros grandes.
Fórmula
How this is calculated
Introduce tres enteros: la base b, un exponente no negativo e y un módulo positivo m. La calculadora devuelve el resto de b elevado a e dividido entre m. Calcular b^e primero de forma ingenua desbordaría para exponentes grandes, así que esta herramienta usa exponenciación por cuadrados (también llamada exponenciación binaria).
El algoritmo empieza con resultado = 1 y reduce la base módulo m. Luego recorre los bits del exponente de menos a más significativo: siempre que el bit actual es 1 multiplica el resultado en curso por la base actual (mod m), y en cada paso eleva al cuadrado la base (mod m) y desplaza el exponente un bit a la derecha. Como cada producto intermedio se reduce módulo m, los números se mantienen pequeños y el trabajo es proporcional a log2(e) multiplicaciones en lugar de e de ellas. Toda la aritmética se realiza con BigInt de JavaScript para que los resultados sean exactos sin importar el tamaño.
Supuestos y casos límite: el exponente debe ser un número entero e >= 0 y el módulo debe ser un entero positivo m > 0 (mod 0 es indefinido). La base puede ser negativa; primero se normaliza al rango 0..m-1 usando ((b mod m) + m) mod m, así que el resto devuelto siempre es no negativo. Cuando e = 0 el resultado es 1 mod m. Cuando m = 1 el resultado siempre es 0.
Preguntas frecuentes
Para exponentes grandes b^e es astronómicamente enorme y lento o imposible de almacenar. Reducir módulo m en cada multiplicación mantiene cada valor por debajo de m y termina en unas log2(e) etapas.
Sí. La base se normaliza a 0..m-1 antes del bucle usando ((b mod m) + m) mod m, así que una base negativa aún da un resto correcto no negativo.
Por convenio b^0 = 1, así que el resultado es 1 mod m (que es 0 cuando m = 1).
También conocido como
TG we-Calculate Editorial Team. (2026). Calculadora de exponenciación modular [Online calculator]. TG we-Calculate. https://we-calculate.com/es/calculator/modular-exponentiation-calculator
TG we-Calculate Editorial Team. "Calculadora de exponenciación modular." TG we-Calculate. 2026. https://we-calculate.com/es/calculator/modular-exponentiation-calculator.
TG we-Calculate Editorial Team, "Calculadora de exponenciación modular," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/es/calculator/modular-exponentiation-calculator
@misc{wecalculate_modular_exponentiation_calculator, title = {Calculadora de exponenciación modular}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/es/calculator/modular-exponentiation-calculator}}, year = {2026}, note = {TG we-Calculate} }
¿Te ayudó esta calculadora?
