Δημοσιεύτηκε: 10 Ιαν 2013, 01:27
από Knoxd
Μετά απο αρκετό ψάξιμο έγραψα τον ακόλουθο κώδικα για τον οποίο δεν είμαι καθόλου σίγουρος ότι κάνει τη δουλειά σωστά...
Ο κώδικας:
import time
import threading
def isprime(n):
if n == 2:
return 1
if n%2 ==0:
return 0
max = n**0.5 + 1
i=3
while i <= max:
if n % i == 0:
return 0
i+=2
return 1
primenubers = []
print "Please give the maximum number"
endnum = input()
start = time.time()
class ThreadClass(threading.Thread):
def myfunc():
for i in range(endnum):
if isprime(i) == 1:
primenubers.append(i)

for i in range(2):
t = ThreadClass()
t.start()
print primenubers
print "Elapsed Time: %s" % (time.time() - start)

Επίσης δεν μου εκτυπώνει τους αριθμούς..(για αυτό το λόγο έχω και αμφιβολίες για το εαν δουλεύει σωστά...)
Οποιαδήποτε γνώμη-άποψη για βελτίωση ή για το πως μπορεί να λειτουργήσει σωστά θα ήταν ευπρόσδεκτη.