Kalkulačka modulárneho umocňovania
Rýchlo a presne vypočítajte (základ^exponent) mod m pomocou binárneho umocňovania mocnením.
Computed with exponentiation by squaring
Ako táto kalkulačka funguje?
Modulárne umocňovanie hľadá (základ^exponent) mod m. Namiesto priameho výpočtu obrovskej mocniny sa používa binárne umocňovanie mocnením: základ sa umocňuje a exponent sa delí dvoma v každom kroku, pričom sa násobia bity nastavené na 1 a priebežne sa redukuje mod m. Výsledok sa dosiahne za zhruba log2(exponent) násobení a zostáva presný pri použití veľkých celých čísel.
Vzorec
How this is calculated
Zadajte tri celé čísla: základ b, nezáporný exponent e a kladný modul m. Kalkulačka vráti zvyšok po delení b umocneného na e hodnotou m. Naivný výpočet b^e by pre veľké exponenty pretiekol, preto tento nástroj používa umocňovanie mocnením (nazývané aj binárne umocňovanie).
Algoritmus začína s result = 1 a redukuje základ modulo m. Potom prechádza cez bity exponentu od najmenej významného po najvýznamnejší: vždy, keď je aktuálny bit 1, vynásobí bežiaci výsledok aktuálnym základom (mod m), a v každom kroku umocní základ (mod m) a posunie exponent o jeden bit doprava. Keďže každý medzivýsledok je redukovaný modulo m, čísla zostávajú malé a práca je úmerná log2(e) násobeniam namiesto e násobení. Všetky aritmetické operácie sa vykonávajú pomocou JavaScript BigInt, takže výsledky sú presné bez ohľadu na veľkosť.
Predpoklady a hraničné prípady: exponent musí byť celé číslo e >= 0 a modul musí byť kladné celé číslo m > 0 (mod 0 je nedefinovaný). Základ môže byť záporný; najprv sa normalizuje do rozsahu 0..m-1 pomocou ((b mod m) + m) mod m, takže vrátený zvyšok je vždy nezáporný. Keď e = 0, výsledok je 1 mod m. Keď m = 1, výsledok je vždy 0.
Často kladené otázky
Pre veľké exponenty je b^e astronomicky veľké a pomalé alebo nemožné uložiť. Redukciou modulo m pri každom násobení zostávajú všetky hodnoty pod m a výpočet skončí za zhruba log2(e) krokov.
Áno. Základ sa pred cyklom normalizuje do rozsahu 0..m-1 pomocou ((b mod m) + m) mod m, takže záporný základ stále dáva správny nezáporný zvyšok.
Podľa konvencie b^0 = 1, takže výsledok je 1 mod m (čo je 0, keď m = 1).
Známe aj ako
TG we-Calculate Editorial Team. (2026). Kalkulačka modulárneho umocňovania [Online calculator]. TG we-Calculate. https://we-calculate.com/sk/calculator/modular-exponentiation-calculator
TG we-Calculate Editorial Team. "Kalkulačka modulárneho umocňovania." TG we-Calculate. 2026. https://we-calculate.com/sk/calculator/modular-exponentiation-calculator.
TG we-Calculate Editorial Team, "Kalkulačka modulárneho umocňovania," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/sk/calculator/modular-exponentiation-calculator
@misc{wecalculate_modular_exponentiation_calculator, title = {Kalkulačka modulárneho umocňovania}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/sk/calculator/modular-exponentiation-calculator}}, year = {2026}, note = {TG we-Calculate} }
Pomohla vám táto kalkulačka?
