我刚刚开始学习Python编码课程,使用IDLE,并寻找一些指导。我正在编写一个程序来确定用户输入的值是素数还是非素数。到目前为止,我已经编写了以下代码:
x = int(input("Enter a number: "))
if x == 2:
print(x, 'is a prime number')
if x>1:
for y in range (2, x):
if (x % y)==0:
print (x, 'is not a prime number')
break
else:
print (x, 'is a prime number')
break
else:
print(x, 'is not a prime number')
我需要为这个程序使用'def'函数。根据说明,代码应该这样显示:
def isPrime(testnumber):
#insert function codes to test if the number is prime
num = int(input("Enter a number: "))
if isPrime(num):
print("{0} is a prime number".format(num))
else:
print("{0} is not a prime number".format(num))
然而,我不知道如何包含代码来确定一个素数作为'def'并执行上述操作。任何提示都将非常感激。问候,利亚姆。
请记住,在检查质数时,您只需查看sqrt(x)。你不需要一直到x,这里我没有修改
def isPrime(x):
if x == 2:
return True
if x>1:
for y in range (2, x):
if (x % y) == 0:
return False
return True
else:
return False
num = int(input("Enter a number: "))
if isPrime(num):
print("{0} is a prime number".format(num))
else:
print("{0} is not a prime number".format(num))