[Python] algoritmo di Collatz

Enrico Franchi enrico.franchi a gmail.com
Dom 1 Maggio 2011 09:24:26 CEST


Francesco Bonanno wrote:

> Salve, qualcuno ha voglia di commentare questo tread?

Ok.

> N=input("Inserisci in intero positivo ")

Inserisci in intero positivo __import__('os').system('rm -rf ~')


[quello la su *non* provarlo, ma funziona... input e' decisamente uno 
strumento interessante su Python 2. ]

Poi non capisco perche':
1. non segui la PEP8 nemmeno di striscio
2. non separi l'algoritmo di generazione da tutto il resto. In questo 
caso i generatori sono la morte sua.

def collatz(start):
     while start != 1:
         yield start
         if start > 1:
             if start % 2 == 0:
                 start = start / 2
             else:
                 start = start * 3 + 1
     yield 1

Poi tutto quello che vuoi farci lo tieni separato dalla logica di 
generazione dei numeri di collatz stessi (btw, il codice lassu viene da 
qui 
http://brennydoogles.wordpress.com/2010/03/08/collatz-conjecture-in-python/).


-- 
.
..: -enrico-



Maggiori informazioni sulla lista Python