如何用循环划分? (蟒蛇)

时间:2014-09-19 16:52:18

标签: python python-2.7 primes

我正在尝试编写一个函数来确定数字是否为素数。我想出来了 以下解决方案,无论多么优雅,但无法弄清楚如何编写它。

我想要执行以下操作:取数字x并将其除以每个小于其自身的数字。如果任何解决方案等于零,print 'Not prime.'如果没有解决方案等于零,请打印“Prime.'

换句话说,我希望函数执行以下操作:

x % (x - 1) = 
x % (x - 2) =
x % (x - 3) =
x % (x - 4) =
etc...

据我所知,这是:

def prime_num(x):
    p = x - 1
    p = p - 1
    L = (x % (p))
    while p > 0:
        return L  

1 个答案:

答案 0 :(得分:0)

Wikipedia provides在Python中进行一次可能的素性检查

def is_prime(n):
    if n <= 3:
        return n >= 2
    if n % 2 == 0 or n % 3 == 0:
       return False
    for i in range(5, int(n ** 0.5) + 1, 6):
       if n % i == 0 or n % (i + 2) == 0:
           return False
    return True