DEV Community

Discussion on: Daily Coding Puzzles - Oct 29th - Nov 2nd

Collapse
 
aspittel profile image
Ali Spittel

My Python solution:

def reverse_number(num, running_value=0):
    if num == 0: 
        return running_value // 10
    quotient, remainder = divmod(num, 10)
    running_value += remainder
    return reverse_number(quotient, running_value * 10)

print(reverse_number(123456))
print(reverse_number(5))
Collapse
 
dance2die profile image
Sung M. Kim

And now this is... 😮

Thread Thread
 
tux0r profile image
tux0r

... broken.

Collapse
 
tux0r profile image
tux0r
>>> print(reverse_number(1234567890))
987654321

You did not pass.

Thread Thread
 
dance2die profile image
Sung M. Kim • Edited

987654321 is how I expect it to work though without the 0 in the beginning as you should return a positive integer.

Thread Thread
 
tux0r profile image
tux0r

That was not a part of the question, so I would say that the result should still start with a 0.

Thread Thread
 
aspittel profile image
Ali Spittel

the positive integer shouldn't have a leading zero I don't think. It's at least up to interpretation.