Iteration for Factorials
Rafael Sachetto
rsachetto at gmail.com
Mon Oct 22 14:44:15 EDT 2007
More information about the Python-list mailing list
Mon Oct 22 14:44:15 EDT 2007
- Previous message (by thread): Iteration for Factorials
- Next message (by thread): Iteration for Factorials
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
The right way is: import operator def fact(x): return reduce(operator.mul, xrange(1,x+1)) On 10/22/07, Paul Rudin <paul.nospam at rudin.co.uk> wrote: > > "mensanator at aol.com" <mensanator at aol.com> writes: > > > On Oct 22, 7:50 am, Duncan Booth <duncan.bo... at invalid.invalid> wrote: > >> Py-Fun <lorna.bu... at gmail.com> wrote: > >> > I'm stuck trying to write a function that generates a factorial of a > >> > number using iteration and not recursion. Any simple ideas would be > >> > appreciated. > >> > >> This version avoids doing anything fancier than adding 1, so it should > be > >> simple enough for anyone: > >> > >> def factorial(e): > >> a = 1 > >> for b in range(e): > >> c = 0 > >> for j in range(b, -1, -1): > >> for d in range(a): > >> c += 1 > >> a = c > >> return a > > > > Not simple enough for my taste: > > > >>>> import gmpy > >>>> gmpy.fac(10) > > mpz(3628800) > > I haven't followed all this thread, but has anyone yet done: > > import operator > def fact(x): > return reduce(operator.mul, xrange(1,x)) > -- > http://mail.python.org/mailman/listinfo/python-list > -- Rafael Sachetto Oliveira Sir - Simple Image Resizer http://rsachetto.googlepages.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-list/attachments/20071022/88455668/attachment.html>
- Previous message (by thread): Iteration for Factorials
- Next message (by thread): Iteration for Factorials
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list