素数检查器

时间:2014-04-27 10:21:16

标签: loops python-2.7

我必须使用python开发一个程序,该程序将一系列正整数作为输入,并输出每个是否为素数。如果给出负数作为输入并且应该打印该数字,程序应该终止。一个不是素数。瘦我的程序在我输入一个负数时不会运行,它会给一个作为素数。

num=int(input('Enter:'))
for num in range (1,num+1):
 for i in range(2,num):
        if (num%i==0 or num==1):
            print num
            break;

 else:
        print num, "is a prime number"

1 个答案:

答案 0 :(得分:0)

这会检查否定值,并且还会比循环

更快地检查质数
import sys
import math


def check_prime(number):
    if (math.factorial(int(number) - 1) + 1)%int(number) == 0:
        print "Number is prime"
    else:
        print "Not Prime"

number = raw_input("Choose a positive integer")

if not number.isdigit() or number < 1:
    sys.exit()
else:
    check_prime(number)