primchk.py
#!/usr/bin/env python
#
# Check for prime numbers
#
# Author: Yotam Medini [email protected] -- Created: 2005/December/18
#
import sys
def usage_exit(a0, rc):
sys.stderr.write(
"""
Usage:
%s <N1> ... <Nn>
Where:
<Ni> Integer numbers to check for being prime
""" % a0)
sys.exit(rc)
def isPrime(n):
noFactorFound = True # we did not find a factor yet.
d = 2
# It is enough to check divisors until the square-root of n.
# Note that d <= sqrt(n)
# if-and-only-if d*d <= n - which is easier to compute.
while d*d <= n and noFactorFound:
noFactorFound = (n % d != 0)
d = d + 1
return (n > 1) and noFactorFound
# Begin program
if len(sys.argv) == 1:
usage_exit(sys.argv[0], 1)
args_after_1st = sys.argv[1:]
for arg in args_after_1st:
n = int(arg)
sys.stdout.write("%5d is " % n)
if not isPrime(n):
sys.stdout.write("Not ")
sys.stdout.write("prime\n")
sys.exit(0)
Generated by GNU enscript 1.6.4.