Funzione per trovare numeri primi

« Older   Newer »
 
  Share  
.
  1. ~{Skydrake™}»
     
    .

    User deleted


    CITAZIONE (RootkitNeo @ 7/11/2009, 22:12)
    Sono riuscito a combinare qualcosa

    CODICE
    def primo(n):
     if n%2==0 and n!=2:
       print "Il numero ",n," non e primo"
     elif n==2:
       print n," e primo"
     else:
       for i in range(3,(n+1)):
         if n%­i==0 and n!=i:
           print n," non e primo il suo primo divisore e ",i,""
           break
         elif n%­i==0:
           if n==i:
             print n,"e un numero primo"
             break
     
    numero = input('Inserisci il numero:')
     
    primo(numero)


    è molto simile alla tua, un pò riaggiustata. Se hai bisogno di chiarimenti chiedi, sono qui!! :)

    Computazionalmente è molto pesante...
    Se non ti va di scervellarti troppo con gli algoritmi, fai semplicemente un ciclo da 2 a radice di N, e se trovi un divisore, il numero non è primo.
     
    Top
    .
44 replies since 3/11/2009, 17:13   3110 views
  Share  
.