Jan 30
Questo codice Python di esempio, genera una lista di numeri primi che vanno da 2 fino al numero passato come parametro.
def eratostene(x):
primi = range(3, x + 1, 2)
for i in primi:
if(pow(i, 2) > x):
break
for j in primi:
if(i != j) and (j % i == 0):
primi.remove(j)
primi.insert(0, 2)
return primi










July 9th, 2010 at 9:49 pm
questo non è il crivello di eratostene…trova i primi ma l’algoritmo di eratostene è molto diverso
ps comunque è inutile provare se tutti i numeri al quadrato superano il numero dato…basta modificare la chiamata a range, con range(3, int((x+1)**0.5), 2)