Python編程算法【三十七】素數(shù)
【案例內(nèi)容】
素數(shù)是指除了1和它本身以外再沒有其他因子的自然數(shù)。求給定范圍start~end之間的所有素數(shù)。
【解題思路】
先設(shè)定一個變量n,讓它在start到end之間取值(包括start和end),接著判斷從2到n的一半(若n為奇數(shù),則從2到n整除2)的所有數(shù)字中,只要有一個數(shù)能被n整除,那么n就不是素數(shù)。因為根據(jù)素數(shù)的定義,除了1和n本身以外,不能再有其他因子。對于這步,我們可以直接用for...else的循環(huán)結(jié)構(gòu)來實現(xiàn)。此外本題也適合用函數(shù)來寫,所有代碼如下:
【Python代碼】

在數(shù)論中,素數(shù)是最純粹也最令人著迷的概念。在所有的素數(shù)中,只有2是唯一的一個偶數(shù),其他的素數(shù)都是奇數(shù)。所以如果start為奇數(shù)的話,可以每次步長+2,即:
for n in range(start, end + 1, 2)