这是我们老师给我们的问题:
“确定数字是否为素数的一种方法如下:
如果数字< 2,然后返回False
如果数字为2,则返回True
对于i的每个值,其中i> = 2且i <1。号:
如果我将数字均分,则返回False
返回True“
我已经设法完成了大部分工作,但是当它说'对于i的每个值,其中i&gt; = 2且i&lt;数:' 我如何在代码中写这个?
if number < 2:
return False
if number == 2:
return True
?????????
if i%2 == 0:
return False
return True
答案 0 :(得分:1)
哟需要一个循环来检查所有数字,比检查的数字少2到1。有更好的方法(例如只检查数字的平方根),但简单的算法将是:
def isPrime (n):
if n < 2:
return False
for x in range (2, n):
if n % x == 0:
return False
return True
因此,就您需要添加到代码中的内容而言:
2
检查模数。答案 1 :(得分:0)
您需要从2开始循环到数字
for i in range(2,number)
if number%i == 0:
return false
答案 2 :(得分:0)
def isprime(num):
#this is the part you are missing
for divider in range(2,num):
if num%divider == 0:
return False
#end of missing part
return not num%2 == 0 or num==2 or num==0
for i in range(0,200):
if isprime(i): print i, isprime(i)