[Python] informazioni su errore

Nicola Ferrari nick.ferro a gmail.com
Mer 7 Ott 2009 11:40:17 CEST


Ciao a tutti.
Mi sto avvicinando al Python e su consiglio di Daniele, sto cercando di fare
con Python i "problemi"
di eulero.. uno di questi lo trovate qui
http://projecteuler.net/index.php?section=problems&id=3

Per risolverlo ho creato una funzione che mi indica se un numero è primo

*def primo(x):
  primo = True
  i = 2
  while i < x and primo:
    j = x/i
    j = x-(j*i)
    if j == 0:
      primo = False
    else:
      i += 1
  return primo*

e infine una funzione che mi dia la lista dei numeri primi

*def ListaPrimi(n):
    i=1
    lista_primi=[]
    max = n//2 + 1
        while i<=max:
                if primo(i)==True and n%i==0:
                        lista_primi.append(i)
                i+=1
    return lista_primi*

Per prendere il massimo faccio max(ListaPrimi(numero))
Ho provato con vari esempi (anche con il numero 13195) e funziona...

Se provo con il numero richiesto, python non mi risponde più.. come mai?
Inoltre.. ho provato a fare un "return max(lista_primi)" all'interno della
funzione, ma mi da errore

"Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 9, in ListaPrimi
TypeError: 'int' object is not callable
"

Dove Sbaglio?!?
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20091007/73a67891/attachment.htm 


Maggiori informazioni sulla lista Python