Update primes script.

This commit is contained in:
Georg Brandl 2009-10-11 08:48:28 +00:00
parent 6e62c56416
commit 4271ecaf72
2 changed files with 18 additions and 15 deletions

View file

@ -2,7 +2,7 @@ This directory contains a collection of executable Python scripts.
See also the Tools/scripts directory!
beer.py Print the classic 'bottles of beer' list.
beer.py Print the classic 'bottles of beer' list
eqfix.py Fix .py files to use the correct equality test operator
fact.py Factorize numbers
find-uname.py Search for Unicode characters using regexps

View file

@ -2,26 +2,29 @@
# Print prime numbers in a given range
def primes(min, max):
if 2 >= min:
print 2
primes = [2]
i = 3
while i <= max:
for p in primes:
if i % p == 0 or p*p > i:
break
if i % p != 0:
primes.append(i)
if i >= min:
print i
i += 2
def main():
import sys
min, max = 2, 0x7fffffff
if sys.argv[1:]:
min = int(eval(sys.argv[1]))
min = int(sys.argv[1])
if sys.argv[2:]:
max = int(eval(sys.argv[2]))
max = int(sys.argv[2])
primes(min, max)
def primes(min, max):
if 2 >= min: print 2
primes = [2]
i = 3
while i <= max:
for p in primes:
if i%p == 0 or p*p > i: break
if i%p <> 0:
primes.append(i)
if i >= min: print i
i = i+2
if __name__ == "__main__":
main()