溫馨提示×

python求質數的算法怎么寫

小億
56
2023-12-07 06:07:11
欄目: 編程語言

有多種方法可以用Python編寫質數的算法。下面是兩種常見的方法:

方法一:使用除法 該算法通過逐個除以小于該數的所有整數,判斷是否存在能整除該數的數。如果存在則不是質數,否則是質數。

def is_prime(n):
    if n <= 1:
        return False
    for i in range(2, n):
        if n % i == 0:
            return False
    return True

# 示例用法
print(is_prime(5))  # 輸出 True
print(is_prime(10)) # 輸出 False

方法二:使用開方 該算法通過判斷一個數是否能被小于等于其平方根的質數整除,判斷是否為質數。這是因為如果一個數可以被大于其平方根的數整除,那它也一定可以被小于等于其平方根的質數整除。

import math

def is_prime(n):
    if n <= 1:
        return False
    for i in range(2, int(math.sqrt(n)) + 1):
        if n % i == 0:
            return False
    return True

# 示例用法
print(is_prime(5))  # 輸出 True
print(is_prime(10)) # 輸出 False

這兩種算法都可以判斷一個數是否為質數,但第二種方法的效率更高,特別是當需要判斷大量的數是否為質數時,建議使用第二種方法。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女