Anonymous user
Lucas-Lehmer test: Difference between revisions
→{{header|Python}}: python colorization, remove nonpythonic syntax
(→{{header|Python}}: python colorization, remove nonpythonic syntax) |
|||
Line 391:
=={{header|Python}}==
from math import sqrt, log
def is_prime ( p ):
Line 399 ⟶ 398:
elif p <= 1 or p % 2 == 0: return False
else:
prime = True;▼
▲ for i in range(3, int(sqrt(p))+1, 2 ): # do
if p % i == 0: return False
def is_mersenne_prime ( p ):
if p == 2:
else:
m_p =
for i in range(3, p+1):
s = (s ** 2 - 2) % m_p
return s == 0
precision = 20000
long_bits_width = precision / log(2) * log(10)
upb_prime = int( long_bits_width - 1 ) / 2
upb_count = 45
print
count=0
for p in range(2, upb_prime+1):
if is_prime(p) and is_mersenne_prime(p):
print("M%d"%p),
stdout.flush()
count += 1
if count >= upb_count: break
print</python>
Output:
M2 M3 M5 M7 M13 M17 M19 M31 M61 M89 M107 M127 M521 M607 M1279 M2203 M2281 M3217 M4253 M4423 M9689 M9941 M11213 M19937 M21701 M23209</pre>
=={{header|Scheme}}==
|