I have a function here which converts a number to its constituents.
def breakdown(number):
res = []
multiplier = 1
while number != 0:
digit = (number % 10)*multiplier
number = number//10
multiplier = multiplier*10
res.append(digit)
res.reverse()
return res
Example breakdown(8541)
gives [8000, 500, 40, 1]
.
This program works fine for any positive number, but goes into an infinite loop when provided with a negative integer. Any ideas on how to make it work with any number?
Sample:
Input: breakdown(-4562)
should give output: [-4000,-500,-60,-2]