Как возвести в степень в php?
Здравствуйте. Задачка банальная, но суть такая: нужно возвести $a в переменную $b без использования оператора ** и функции pow(). С квадратом проблем не возникло, а вот как возвести в степень равной 3 и более не знаю. Прошу помочь.
Дополнительно:
с квадратом не возникло проблем. А какие проблемы возникли в другими степенями?
Квадрат – два раза умножить число на себя, куб - три раза, n-степень – n раз.
$a = 5;
$n = 5;
if ($a != 0) {
$a *= $a;
echo $a;
}
Такой цикл позволяет вычислить только квадрат $a. Аргумент поставил такой, потому что 0 нельзя возводить в степень. Но $n здесь вообще не используется, а как мне кажется именно в неё нужно заложить число, которое должно выполнять функцию степени. Либо я совсем не в те дебри лезу.
Самое простое:
function user_pow(int $number, int $degree) { if ($number <= 0 || $degree < 0) throw new InvalidArgumentException('Invalid arguments'); if ($degree === 0) return 1; $result = $number; for($i = 1; $i < $degree; $i++) { $result *= $number; } return $result; } echo user_pow(2, 2); // 4 |
function user_pow(int $number, int $degree) { if ($number <= 0 || $degree < 0) throw new InvalidArgumentException('Invalid arguments'); if ($degree === 0) return 1; $result = $number; for($i = 1; $i < $degree; $i++) { $result *= $number; } return $result; } echo user_pow(2, 2); // 4
- спасибо, буду разбираться, что тут что выполняет
- Ну отрицательное основание все таки может быть )
(отрицательная степень правда тоже, но кнчн не умножением это уже решать) - GavriKos, да, и дробные тоже. Но это уже автор самостоятельно допилит.
Ответы:
Цикл + умножение.
https://habr.com/ru/companies/otus/articles/779396/
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для возведения числа в степень в PHP можно воспользоваться функцией pow(). Эта функция принимает два аргумента: число, которое нужно возвести в степень, и саму степень. Например, если нам нужно возвести число 2 в степень 3, то код будет выглядеть следующим образом:
$number = 2; $power = 3; $result = pow($number, $power); echo $result; // Выведет 8
Также можно возвести число в степень, используя оператор **. Например:
$number = 2; $power = 3; $result = $number ** $power; echo $result; // Выведет 8
Обратите внимание, что функция pow() возвращает число с плавающей точкой, поэтому если вам нужно целое число, то его нужно привести к целому типу данных с помощью функции intval().
Таким образом, для возведения числа в степень в PHP можно использовать как функцию pow(), так и оператор **, в зависимости от ваших предпочтений.