Как перевернуть число? [требует правки]

1171
09 июня 2017, 12:59

Вспомнил одну задачу, нужно написать функцию возвращаю число в обратном порядке, без преобразования в строку. К примеру 5921 -> 1295. Никак не дойдет как это сделать

Answer 1

Пока num !== 0 берем последнюю цифру от num, делим этот num на 10, добавляем порядок к result и плюсуем последнюю цифру к result.

var num = 5921; 
 
function getReversedNum(num) { 
  let result = 0; 
  while (num) { 
    result = result * 10 + num % 10; 
    num = Math.floor(num / 10); 
  } 
 
  return result; 
} 
 
console.log(getReversedNum(num));

Answer 2

Не лучший вариант, но рабочий:

function reverseInt(number) { 
  var result = ''; 
   
  while(number>0){ 
   result = result + (number%10); 
   number = parseInt(number/10); 
  } 
   
  return result; 
} 
 
var number = 5921; 
console.log(reverseInt(number));

Answer 3

revert = num => { 
  let i = 0, result=0; 
  for(let r=1; r<num; r=10**++i) result+=(((num-num%r)/r)%10)/r; 
  return result*(10**(i-1)); 
} 
console.log([321,48735,90008].map(revert))

Answer 4

Или так:

function reverse(num, r = 0){ 
    if(!num) return r; 
    r =  r * 10  + num % 10; 
    return reverse(Math.floor( num / 10), r); 
} 
console.log(reverse(12345));

Answer 5

А так устроит ответ? без преобразования в string:

var x = 5921; 
var y = 0; 
for(; x; x = Math.floor(x / 10)) { 
    y *= 10; 
    y += x % 10; 
} 
console.log(y);

READ ALSO
Почему в методах React используют bind()? [дубликат]

Почему в методах React используют bind()? [дубликат]

На данный вопрос уже ответили:

409
Средства модульного программирования

Средства модульного программирования

Дали задание, решаемое (вроде как) в пару строк кодаУсловие звучит так:

259
Кроп изображения в админке Django с помощью cropper.js

Кроп изображения в админке Django с помощью cropper.js

Нужно передавать на сервер обрезанное с помощью JS библиотеки изображениеКак это реализовать?

301