Задача 1.
Дано натуральное число N. Выведите слово YES, если число N является точной степенью двойки, или слово NO в противном случае. Операцией возведения в степень пользоваться нельзя!
Результат:
function isPowerTwo (N) {
if ( N == 2 || N == 1 || (N%2 ==0 && isPowerTwo (N/2) == "YES") ){
return "YES";
}
return "NO";
}
console.log("132",isPowerTwo(132));
console.log("32",isPowerTwo(32));
console.log("8",isPowerTwo(8));
console.log("9",isPowerTwo(9));
Задача 2.
Дано натуральное число N. Вычислите сумму его цифр.При решении этой задачи нельзя использовать строки, списки, массивы (ну и циклы, разумеется).
Результат:
function sumDigits (N) {
N = parseInt(N);
if ( N ){
return (N%10 + sumDigits (N/10));
} else {
return N;
}
}
console.log("197843",sumDigits(197843));