@Shahnazaryan

Как вычислить степень числа с помощью рекурсии?

Есть такая задачка N = 2 ^ k. С помощью рекурсии надо вычислить и найти степень k.

Допустим N = 8.
  • Вопрос задан
  • 272 просмотра
Решения вопроса 1
web_Developer_Victor
@web_Developer_Victor
Что такое google?
const findPower = (number, base = 2, power = 0) => {
	if (power > 1000) return new Error(`Too large number or it's not a power of ${base}`);
	if (number <= 0) return new Error(`Number must be > 0`);

	if (number === base ** power) return power;

	return findPower(number, base, power + 1)
}

console.log(findPower(8)); // 3
console.log(findPower(16)); // 4
console.log(findPower(1)) // 0
console.log(findPower(3)) // Error
console.log(findPower(-1)) // Error
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@100000000000
function pouer (num, gibe) {
    if (!gibe) {
        return pouer(num, 1)
    } else {
        return Math.log2(num)
    }
}

pouer(16) // 4
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы