Il 02/08/2011 17:44, Marco Mariani ha scritto:
2011/8/2 matteo <matteo.we...@gmail.com <mailto:matteo.we...@gmail.com>>

    non me ne intendo molto di programmazione, sono alle prime armi,
    ma secondo voi è buono un codice che riesce in 5 secondi a trovare
    tutti i numeri primi da 1 a 1000000? (ho un intel i3 da 3 ghz)


in assoluto? dipende :-)

marco@aigor:~$ time primes 1 1000000 > /dev/null

real    0m0.018s
user    0m0.016s
sys    0m0.000s

    P.S.: il codice l'ho elaborato io studiando un po da solo i numeri
    primi


bene!
se hai voglia di pubblicarlo possiamo commentarlo assieme




_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
import math
def primi(N):

    """ Print first N prime numbers """

    primes=[2]
    x=3
    while x<N:
       valid=True
       for divi in primes[:int(math.sqrt(x))]:
          if x%divi==0:
             valid=False
             break
       if valid:
          primes.append(x)
       x=x+2
    return primes

ecco ;) è sempliciotto, ma gia ho pensato a qualcosa per migliorarlo, voi che ne pensate?
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a