先进算法 求某一范围内的质数

xiaoxiao2021-02-28  25

#! prime.py import time f = open("sss.txt","w") def primes(n):     P = []     f = []     for i in range(n + 1):         if i > 2 and i % 2 == 0:             f.append(1)         else:             f.append(0)     i = 3     while i * i <= n:         if f[i] == 0:             j = i * i             while j <= n:                 f[j] = 1                 j += i + i         i += 2     P.append(2)     for i in range(3, n, 2):         if f[i] == 0:             P.append(i)     return P if __name__ == '__main__':     start = time.clock()     n = 10000000     P = primes(n);     print("There are %d primes less than %d" % (len(P), n))     # for i in range(10):     #  print(P[i])     print("Time: %f" % (time.clock() - start))     # for n in range(2,100000):     #  if isPrime(n):     #    print("%d is prime"%n)     # print("%d is "%n + ("prime" if isPrime(n) else "not prime"))     # print(primes(n),file=f)
转载请注明原文地址: https://www.6miu.com/read-2632964.html

最新回复(0)