如何透過 Python 檢視一個數字是不是質數?


本問題解決方案採用的原理是將給定數字除以從 3 到其平方根的所有數字,一個數字的平方根是其最大可能因子,超過這個因子就不必再檢查是否被任何其他數字整除,即可確定它是一個質數。

對於所有可被 2 整除且小於 2 的數字,此函式返回 false。對於其他數字,如果被任意一個從 3 到其平方根的數字整除,此函式將返回 false;如果不被任何數字整除,則返回 true。

示例

def is_prime(a):
    if a < 2:
        return False
    elif a!=2 and a % 2 == 0:
        return False
    else:
        return all (a % i for i in range(3, int(a**0.5)+1) )
num=int(input('enter a number'))
if is_prime(num)==True:
    print ("{} is a prime number".format(num))
else:
    print ("{} is not a prime number".format(num))

輸出

以上程式的示例執行−

enter a number24
24 is not a prime number
enter a number47
47 is a prime number

更新於: 2020-03-02

已檢視 769 次

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告