Переворачиваем целое число задом на перёд (на Java)

Сегодня мы рассмотрим одну из тех задач, что предлагаются начинающим.

Допустим. Дано целое число (например, 1234). Необходимо получить число, в котором те же самые цифры идут в обратной последовательности (то сеть, 4321).

Сразу отбросим очевидные и неэффективные подходы наподобие преобразования числа в строку. Для решения этой задачи достаточно воспользоваться обычной арифметикой.

Алгоритм, следующий:

  1. Получить остаток от деления исходного числа на 10 и записать в переменную, в которой будем накапливать результат;
  2. Разделить исходное число на 10 (это будет исходное число для следующей итерации);
  3. Умножить результат операции 1 на 10;
  4. Прибавить к результату операции 1 остаток от деления на 10 числа, полученного в ходе операции 2 и записать в переменную, в которой будем накапливать результат;
  5. Разделить на 10 число, полученное в результате операции 2 и т.д. до тех пор, пока исходное число итерации не станет равно 0.

В результате в переменной для накопления результата будет нужное нам число.

Конечно, на словах это воспринимается достаточно сложно, но реализация в коде на самом деле очень простая.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *