鼠尾草数学重复过程

时间:2019-03-03 10:58:45

标签: python algorithm math primes sage

使用sage maths,我需要找到7之后的下三个素数。

我的代码当前为:

P = Primes()

P.next(7)

我该如何重复以找到其他2个解决方案?

2 个答案:

答案 0 :(得分:0)

这是一个简单的方法:

START_PRIME = 7    
NUMBER_PRIMES = 3

for p in Primes():
     if p <= START_PRIME:
         continue
     ret.append(p)
     if len(ret) >= NUMBER_PRIMES:
         break

实际上Primes()的行为类似于列表。一旦知道起始素数的索引(在这种情况下为3),您可以通过以下方式获得素数:

p = Primes()
START_INDEX = 3
NUMBER_PRIMES = 3

p[START_INDEX+1:START_INDEX+1+NUMBER_PRIMES]

,为了找到索引,我建议您使用prime_range。再次如此:

p_list = prime_range(100)

START_INDEX = p_list.index(7)
NUMBER_PRIMES = 3
p_list[START_INDEX+1:START_INDEX+1+NUMBER_PRIMES]

答案 1 :(得分:0)

您可以只使用循环来扫描主表。

P=Primes()
a=7
for i in range(3):
    a=P.next(a)
    print a