Python 中的模冪運算指的是對一個數進行冪次運算后再對一個取模操作。這種運算在密碼學和計算機科學中經常被用到,比如在計算密鑰的時候。Python 中提供了內置函數 pow() 來實現模冪運算。
def mod_pow(base, exponent, modulus): result = 1 while exponent >0: if exponent % 2 == 1: result = (result * base) % modulus exponent //= 2 base = (base * base) % modulus return result
上述代碼實現了一個基于快速冪算法的模冪運算函數。該函數接收三個參數:底數 base、冪次 exponent 和取模數 modulus。在函數中,我們先初始化結果變量 result 為 1,然后對冪次進行二進制分解,對于每個二進制位,如果為 1,就把 result 乘以當前底數并對取模數取余,最后將底數自乘并對取模數取余。最終返回 result 即可。
使用該函數來計算模冪的示例代碼如下:
base = 5 exponent = 3 modulus = 7 result = mod_pow(base, exponent, modulus) print(f"{base} 的 {exponent} 次冪模 {modulus} 等于 {result}")
上述代碼會輸出5 的 3 次冪模 7 等于 6
,即計算出了 5 的 3 次冪對 7 取模的結果。通過這種方式,我們可以在計算密鑰等場景下快速而準確地進行模冪運算。
上一篇python 組內排序
下一篇python 模糊搜圖