MModuloSprig
Espacio de programación con IA

Exponenciación modular entera

Calcula una potencia entera módulo un entero positivo mediante cuadrados sucesivos.

● ● ●ModuloSprig●
Flujos de trabajo · Exponenciación modular entera ×
def mod_power(base, exponent, modulus):
    if any(type(v) is not int for v in (base, exponent, modulus)):
        raise ValueError("operand.integer")
    if exponent < 0 or modulus <= 0:
        raise ValueError("operand.range")
    result = 1 % modulus
    base %= modulus
    while exponent:
        if exponent & 1:
            result = result * base % modulus
        base = base * base % modulus
        exponent >>= 1
    return result
✳Calcula una potencia entera módulo un entero positivo mediante cuadrados sucesivos.
✓ CambiosRevisa antes de aplicar ↗
Vista ilustrativa
01

Revisa antes de aplicar

Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.

02

Modelos

Configura un endpoint compatible con OpenAI o Anthropic usando la URL base y, si hace falta, una clave API. Prueba la conexión. Un servidor local debe estar en ejecución; las herramientas remotas pueden enviar datos por separado.

03

Proyecto

Comprueba bases negativas, exponente cero y módulo uno, rechazando exponentes negativos y operandos no enteros o booleanos antes de multiplicar.

Flujos de trabajo

Exponenciación modular entera

Flujos de trabajo ↗
Flujos de trabajo
def mod_power(base, exponent, modulus):
    if any(type(v) is not int for v in (base, exponent, modulus)):
        raise ValueError("operand.integer")
    if exponent < 0 or modulus <= 0:
        raise ValueError("operand.range")
    result = 1 % modulus
    base %= modulus
    while exponent:
        if exponent & 1:
            result = result * base % modulus
        base = base * base % modulus
        exponent >>= 1
    return result
Espacio de programación con IA

Tu próxima idea empieza aquí.

Descargar para Windows ↗