0
DEF重複(M,結果,A,S,d):存儲器錯誤
check = True
r = 0
while r <= s - 1:
if result == m - 1:
check = False
return check
result = (result ** 2) % m
r = r + 1
return check
我需要編寫一個素性測試蟒程序來測試非常大的數字,比如至少100數字。上面的代碼是用於重複平方的Miller Rabin確定性素性測試代碼的一部分。它對於大數量來說非常慢。我如何加快速度?這是一個項目。謝謝!
m是要測試的數字,結果是(base ** d)%m,其中d是m重複除以2後的奇數,a是基數,s是重複除m後得到的2的指數,d是奇數。 –