JavaScript: инвертировать биты заданного 16-битного целого числа без знака
JavaScript Basic: упражнение 138 с решением
Напишите программу на JavaScript, чтобы обратить биты заданного 16-битного целого числа без знака.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Reverse the bits of a given 16 bits unsigned short integer</title>
</head>
<body>
</body>
</html>
Код JavaScript:
function sixteen_bits_reverse(num) {
var result = 0;
for (var i = 0; i < 16; i++)
{
result = result * 2 + (num % 2);
num = Math.floor(num / 2);
}
return result;
}
console.log(sixteen_bits_reverse(12345));
console.log(sixteen_bits_reverse(10));
console.log(sixteen_bits_reverse(5));
Пример вывода:
39948 20480 40960
Блок - схема:
Версия ES6:
function sixteen_bits_reverse(num) {
let result = 0;
for (let i = 0; i < 16; i++)
{
result = result * 2 + (num % 2);
num = Math.floor(num / 2);
}
return result;
}
console.log(sixteen_bits_reverse(12345));
console.log(sixteen_bits_reverse(10));
console.log(sixteen_bits_reverse(5));
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-137 от w3resource ( @ w3resource ) в CodePen .
Предыдущий: Напишите программу на JavaScript, чтобы проверить, возвращает ли заданное число больше 15 заданное число, иначе возвращает 15.
Далее: Напишите программу на JavaScript, чтобы проверить, можно ли переставить символы данной строки таким образом, чтобы она стала равной другой данной строке.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code