質數又稱素數。指在乙個大於1的自然數中,除了1和此整數自身外,不能被其他自然數整除的數。素數在數論中有著很重要的地位。比1大但不是素數的數稱為合數。1和0既非素數也非合數。質數是與合數相對立的兩個概念,二者構成了數論當中最基礎的定義之一。基於質數定義的基礎之上而建立的問題有很多世界級的難題,如哥德**猜想等。算術基本定理證明每個大於1的正整數都可以寫成素數的乘積,並且這種乘積的形式是唯一的。這個定理的重要一點是,將1排斥在素數集合以外。如果1被認為是素數,那麼這些嚴格的闡述就不得不加上一些限制條件。
前幾天偶爾的有朋友問python怎麼判斷素數的方法,走網上查了查,總結了python指令碼判斷乙個數是否為素數的幾種方法:
#運用python的數學函式import math
def isprime(n):
if n <= 1:
return
false
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return
false
return
true
#單行程式掃瞄素數
from math import sqrt
n = 100
[ p for p in range(2, n) if
0not
in [ p% d for d in range(2, int(sqrt(p))+1)] ]
#運用python的itertools模組
from itertools import count
def isprime(n):
if n <= 1:
return
false
for i in count(2):
if i * i > n:
return
true
if n % i == 0:
return
false
#不使用模組的兩種方法
def isprime(n):
if n <= 1:
return
false
i = 2
while i*i <= n:
if n % i == 0:
return
false
i += 1
return
true
def isprime(n):
if n <= 1:
return
false
if n == 2:
return
true
if n % 2 == 0:
return
false
i = 3
while i * i <= n:
if n % i == 0:
return
false
i += 2
return
true
Python判斷乙個數是否為小數
一 判斷乙個數是否為小數 1 有且僅有乙個小數點 2 小數點的左邊可能為正數或負數 3 小數點的右邊為正數 二 實現 def is float str if str.count 1 小數有且僅有乙個小數點 left str.split 0 小數點左邊 整數字,可為正或負 right str.spli...
判斷素數 Python判斷乙個數是否為素數
素數的定義 乙個數如果只能被1和自身整除,則該數為素數。如果用程式設計的思維思考,則是說,如果乙個數被比它小的數 1除外 整除後餘數為0,則說明這個數可以被其他數整除,則該數為合數,否則該數為質數。python 如下 注釋 range 的起始值應該設為2,如果起始值設為1,則會第一次列印說該數是合數...
判斷乙個數是否為回文數
問題描述 輸入乙個數值判斷是否為回文數 回文數是指乙個像12321 123321這樣 對稱 的數 解題思路 將數值的各個位存放在陣列中,若陣列中元素左右對稱,則為回文數,反之不是 設定 left 陣列最左邊下標 right 陣列最右邊下標 首先判斷第乙個和最後乙個數值是否相等,若相等,left ri...