Возвести заданное число в целую степень без использования функции pow (цикл while) - C (СИ)
Формулировка задачи:
Возвести заданное число в целую степень без использования функции pow
Решение задачи: «Возвести заданное число в целую степень без использования функции pow (цикл while)»
textual
Листинг программы
while(n) {
if(n&1) r*=x;
n>>=1;
x=x*x;
}
Объяснение кода листинга программы
В данном коде выполняется возведение числа в целую степень. Вот список шагов, которые выполняются в этом коде:
- Переменная
nинициализируется заданным числом, которое нужно возвести в степень. - Переменная
rинициализируется единицей. Она будет использоваться как промежуточный результат. - Запускается цикл while, который выполняется до тех пор, пока
nне станет равным нулю. - Внутри цикла, проверяется, является ли самый младший бит числа
nединицей. Если это так, то значение переменнойrумножается наx. - Затем самый младший бит числа
nсдвигается вправо на одну позицию (что приводит к уменьшению числа на 1). - Значение переменной
xумножается на само себя. - Цикл повторяется до тех пор, пока число
nне станет равным нулю. - В результате, значение переменной
rбудет содержать итоговое значение числа, возведенного в степень.