I am trying to write a recursive function to sum up the digits in a number. This is how I did it:
def f(N):
    sum = 0
    return foo(N,sum)
def foo(N, sum):
    if N < 10:
        sum = sum + N
#        print 'N=', N
        return sum
    else:
        sum = sum + N%10
#        print 'N=', N, 'sum= ', sum
        return sum and foo(N/10,sum)
res =  f(5)
print 'N=5', 'res=', res
res =  f(59)
print 'N=59', 'res=', res
res =  f(568)
print 'N=568', 'res=', res
Is it possible to have a simpler recursion using only the f-function, i.e. no 'foo' function?
 
     
     
     
     
    