Это всё можно решить с функции abs(), просто при взятии остатка от деления мы будем получать отрицательные числа, проще показать на примере.
Пусть x = - 523
-523 mod 10 = -3
-523 mod 100 div 10 = -2
-523 div 100 = -5
То есть, мы получим сумму с другим знаком, чего нам не нужно. Для решения проблемы можно преобразовать сам x к модулю x. abs(x)
Либо же преобразовать результат с этой же функции.
Это всё можно решить с функции abs(), просто при взятии остатка от деления мы будем получать отрицательные числа, проще показать на примере.
Пусть x = - 523
-523 mod 10 = -3
-523 mod 100 div 10 = -2
-523 div 100 = -5
То есть, мы получим сумму с другим знаком, чего нам не нужно. Для решения проблемы можно преобразовать сам x к модулю x. abs(x)
Либо же преобразовать результат с этой же функции.