Spec-Zone.ru › Dart 2

dart:math

Функция pow

num pow(
  1. num x,
  2. num exponent
)

Возвращает x в степени exponent.

Если x — это целое число и exponent — это неотрицательное целое число, результат — целое число, в противном случае оба аргумента сначала преобразуются в числа с плавающей точкой двойной точности, а результат — число с плавающей точкой двойной точности.

Для целых чисел степень всегда равна математическому результату x в степени exponent, ограниченная только доступной памятью.

Для чисел с плавающей точкой двойной точности pow(x, y) обрабатывает граничные случаи следующим образом:

  • если y равно нулю (0,0 или -0,0), результат всегда равен 1,0.
  • если x равно 1,0, результат всегда равен 1,0.
  • в противном случае, если любой из x или y — NaN, то результат — NaN.
  • если x отрицательное (но не -0,0) и y — конечное нецелое число, результат — NaN.
  • если x — Бесконечность, а y — отрицательное число, результат — 0,0.
  • если x — Бесконечность, а y — положительное число, результат — Бесконечность.
  • если x — 0,0, а y — отрицательное число, результат — Бесконечность.
  • если x — 0,0, а y — положительное число, результат — 0,0.
  • если x — минус Бесконечность или -0,0, а y — нечётное целое число, то результат — -pow(-x ,y).
  • если x — минус Бесконечность или -0,0, а y — не нечётное целое число, то результат такой же, как у pow(-x , y).
  • если y — Бесконечность, а абсолютное значение x меньше 1, результат — 0,0.
  • если y — Бесконечность, а x — -1, результат — 1,0.
  • если y — Бесконечность, а абсолютное значение x больше 1, результат — Бесконечность.
  • если y — минус Бесконечность, результат — 1/pow(x, Infinity).

Это соответствует функции pow в стандарте IEEE 754-2008.

Обратите внимание, что результат может переполниться. Если целые числа представлены 64-битными числами, целое число может быть усечено, а результат с плавающей точкой двойной точности может переполниться до положительной или отрицательной double.infinity.

Реализация

external num pow(num x, num exponent);

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-math/pow.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API