MModuloSprig
Środowisko programowania z AI

Całkowite potęgowanie modularne

Oblicz całkowitą potęgę modulo dodatnią liczbę całkowitą przez kolejne podnoszenie do kwadratu.

● ● ●ModuloSprig●
Sposoby pracy · Całkowite potęgowanie modularne ×
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
✳Oblicz całkowitą potęgę modulo dodatnią liczbę całkowitą przez kolejne podnoszenie do kwadratu.
✓ ZmianySprawdź przed zastosowaniem ↗
Ilustracja środowiska
01

Sprawdź przed zastosowaniem

Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.

02

Modele

Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.

03

Projekt

Sprawdź ujemne podstawy, zerowy wykładnik i moduł jeden, odrzucając ujemne wykładniki oraz niecałkowite lub logiczne operandy przed mnożeniem.

Sposoby pracy

Całkowite potęgowanie modularne

Sposoby pracy ↗
Sposoby pracy
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
Środowisko programowania z AI

Tutaj zaczyna się kolejny pomysł.

Pobierz dla Windows ↗