熱線電話:13121318867

登錄
首頁精彩閱讀Python實現的尋找前5個默尼森數算法示例
Python實現的尋找前5個默尼森數算法示例
2018-06-05
收藏

Python實現的尋找前5個默尼森數算法示例

本文實例講述了Python實現的尋找前5個默尼森數算法。分享給大家供大家參考,具體如下:

找前5個默尼森數。

若P是素數且M也是素數,并且滿足等式M=2**P-1,則稱M為默尼森數。例如,P=5,M=2**P-1=31,5和31都是素數,因此31是默尼森數。

python2代碼如下:

from math import sqrt
 def isPrime(n):
  'judge whether a positive integer is a prime number!'
  if n==1:
    return False
  k=int(sqrt(n))
  for i in range(2,k+1):
    if n%i==0:
      return False
  return True
def getMonisen(n):
  count=0
  l=[]
  P=2#最小的素數是2,因此P初值為2
  while True:
    if isPrime(P):
      M=2**P-1
      if isPrime(M):
        l.append(M)
        count+=1
        if count==n:
          break
    P+=1
  return l
l=getMonisen(5)
print l

運行程序,結果如下:

    [3, 7, 31, 127, 8191]


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢