[Tutor] Function returns 'None'
Nick Raptis
airscorp at otenet.gr
Sun Jul 11 17:43:16 CEST 2010
On 07/11/2010 06:28 PM, Nick Raptis wrote:
>
> def recursfac(x,carryover=1):
> print 'x:',x,'carryover:', carryover
> if x > 1:
> carryover *= x
> carryover = recursfac(x-1, carryover)
> return carryover
>
> And this returns
> x: 3 carryover: 1
> x: 2 carryover: 3
> x: 1 carryover: 6
> 6
>
> Done!
>
Also, I realized that my final code may be tough to decipher now.. A
nicer way to write it would be (the functionality is still exactly the
same):
def recursfac(x,carryover=1):
print 'x:',x,'carryover:', carryover
if x > 1:
carryover *= x
result = recursfac(x-1, carryover)
else:
# done with recursion, start our way up
result = carryover
return result
More information about the Tutor
mailing list