def step(g, m, n):
notstorage=[]
actualvalues =[]
for i in range(m, (n+1)):
for primechecker in range(2,i):
if i % primechecker == 0:
notstorage.append(i)
for value in range(m, (n+1)):
if (value) and (value+g) not in set(notstorage):
actualvalues.append(value)
actualvalues.append(value+g)
break
return(actualvalues)
在上面的代码中,我试图找出哪些数字是素数,并创建一个列表来检查是否有两个素数被某个数(g)隔开。我有问题是因为由于某种原因303被返回为质数,而它显然不是因为它可以被3整除。。。。我不知道为什么代码不能正常工作?在
当我输入:
^{pr2}$我期望的输出是(307311),因为这是相隔4个数字的前2个质数,但是我得到的是(303307)
不知道我做错了什么?在
您需要使用以下语法:
if (value) not in set(notstorage) and (value+g) not in set(notstorage):
表达式
检查}的计算结果是否为{}。在
(value)
的计算结果是否为True
,而{它不检查}是否都不在集合中。在
(value)
和{相关问题 更多 >
编程相关推荐