找前5個默尼森數。p是素數且m也是素數,並且滿足等式m=2**p-1,則稱m為默尼森數。例如,p=5,m=2**p-1=31,5和31都是素數,因此31是默尼森數。
1#coding:utf-8
2import
math34
defisprime(n):
5if n != int(n) or n <= 1:
6return false #
確保n是正整數
7 i = 2
8while i*i <=n:
9if n % i ==0:
10return
false
11 i += 1
12return
true
1314
defjudge_mns(n):
15if isprime(n) and isprime(math.log(n + 1, 2)):
16return
true
17return
false
1819
defget_mns(n):
20if n != int(n) or n < 1:
21return
22 x = 2
23 mns_number =
24while
true:
25if
judge_mns(x):
2627
if len(mns_number) ==n:
28break
29 x += 1
30return
mns_number
3132
print get_mns(5)
事實上一開始不明白怎麼判斷素數 蛤蛤蛤 在網上看了別人的弄了好久才明白。
第二單元練習題
用命令和正規表示式按照要求建立檔案 用一條 命令建立12個檔案westos classx linuxy x的範圍為1 2,y的數值範圍為1 6 這些檔案都包含在root使用者桌面的study目錄中 命令 touch westos class linux 建立檔案 mkdir study 建立stud...
第二單元練習題
第二單元練習 1.用命令和正規表示式按照要求建立檔案 用一條命令建立12個檔案westos classx linuxy x的數值範圍為1 2,y的數值範圍為1 6 這些檔案都包含在root使用者桌面的study目錄中 用一條命令建立8個檔案redhat versionx x的範圍為1 8 redha...
武sir第二講練習題
一 usr bin env python coding utf 8 一 元素分類 有如下值集合 11,22,33,44,55,66,77,88,99,90.將所有大於 66 的值儲存至字典的第乙個key中,將小於 66 的值儲存至第二個key的值中。即 li 11,22,33,44,55,66,77...