Spec-Zone.ru › Dart 2

dart:math

Функция pow

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

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

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

Для целых чисел степень всегда равна математическому результату возведения 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 равно Infinity, а y отрицательно, результат равен 0.0.
  • если x равно Infinity, а y положительно, результат равен Infinity.
  • если x равно 0.0, а y отрицательно, результат равен Infinity.
  • если x равно 0.0, а y положительно, результат равен 0.0.
  • если x равно -Infinity или -0.0, а y является нечётным целым числом, результат равен -pow(-x ,y).
  • если x равно -Infinity или -0.0, а y не является нечётным целым числом, результат совпадает с pow(-x , y).
  • если y равно Infinity, а абсолютное значение x меньше 1, результат равен 0.0.
  • если y равно Infinity, а x равно -1, результат равен 1.0.
  • если y равно Infinity, а абсолютное значение x больше 1, результат равен Infinity.
  • если y равно -Infinity, результат равен 1/pow(x, Infinity).

Это соответствует функции pow, определённой стандартом IEEE 754-2008.

Обратите внимание, что результат может выйти за допустимый диапазон. Если целые числа представлены 64-разрядными числами, результат типа int может быть усечён, а результат типа double может выйти за допустимый диапазон и стать положительным или отрицательным значением 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.19.6/dart-math/pow.html

Spec-Zone.ru

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