所謂「質數」(prime number, 或稱為「素數」) 是大於 1 的自然數,除 1 及其本身外沒有除數。 大於 1 的自然數若非質數則稱為「複合數」 (composite number)。
例如,5 是質數,因為它只能被 1 和 5 (本身) 整除。 6 則是一個複合數 (不是質數) ,因為它可以被 1、2、3 和 6 (本身) 整除。
編寫一個程式,讀入一個大於 1 的正整數,並判別該整數是質數或是複合數。
# Prime Number
def is_prime(i):
prime = True
for n in range(2,i//2+1):
if (i % n == 0):
prime = False
break
return prime
i = int(input("Enter a positive integer number greater than 1: "))
if (is_prime(i)):
print("The number %d is a prime number." % i)
else:
print("The number %d is a composite number." % i)
|
在此示例中,我們在提示 "Enter a positive integer number greater than 1: " 時鍵入 5 ,得到以下結果
Enter a positive integer number greater than 1: 5
The number 5 is a prime number.
|
而如果我們在提示時鍵入 6 ,其結果則為
Enter a positive integer number greater than 1: 6
The number 6 is a composite number.
|
|
|