溫馨提示×

python怎么用def函數輸出素數

小億
208
2023-08-22 20:56:59
欄目: 編程語言

以下是一個使用def函數輸出素數的Python代碼示例:

def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
def print_primes(n):
primes = []
for i in range(2, n+1):
if is_prime(i):
primes.append(i)
print(primes)
# 調用函數輸出指定范圍內的素數
print_primes(100)

運行以上代碼,會輸出以下結果:

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

定義了兩個函數:is_prime用于判斷一個數是否是素數,print_primes用于輸出指定范圍內的素數。

is_prime函數使用了一個優化的算法,即如果一個數不是素數,那么它一定可以被小于等于它平方根的數整除。因此,在判斷一個數n是否是素數時,只需要從2遍歷到int(n**0.5) + 1,如果存在能夠整除n的數,則n不是素數,返回False;如果都不能整除n,則n是素數,返回True。

print_primes函數遍歷從2到n的數字,調用is_prime函數判斷每個數字是否是素數,如果是素數,則將其添加到一個列表中。最后,輸出這個列表,即為指定范圍內的素數。

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