Provided by: manpages-pl-dev_4.13-4_all bug

NAZWA

       pow, powf, powl - funkcja potęgowa

SKŁADNIA

       #include <math.h>

       double pow(double x, double y);
       float powf(float x, float y);
       long double powl(long double x, long double y);

       Proszę linkować z -lm.

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       powf(), powl():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
               || /* Od glibc 2.19: */ _DEFAULT_SOURCE
               || /* Glibc w wersji <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

OPIS

       Funkcje te zwracają wartość x podniesioną do potęgi y.

WARTOŚĆ ZWRACANA

       Funkcje te, gdy się zakończą pomyślnie, zwracają wartość x podniesioną do potęgi y.

       Jeżeli x jest wartością skończoną mniejszą niż 0 i y jest wartością skończoną niebędącą liczbą całkowitą,
       występuje błąd dziedziny i zwracane jest NaN.

       Jeśli  wartość  wynikowa  jest  zbyt  duża, to występuje błąd przekroczenia zakresu i funkcje odpowiednio
       zwracają HUGE_VAL, HUGE_VALF lub HUGE_VALL z poprawnie ustawionym znakiem.

       Jeśli wartość wynikowa jest zbyt mała, to występuje błąd przekroczenia zakresu i zwracane jest 0.0.

       Z wyjątkiem sytuacji opisanych niżej, jeżeli x lub y wynosi NaN, to wynikiem jest również NaN.

       Jeśli x wynosi +1, to wynikiem jest 1.0 (nawet gdy y wynosi NaN).

       Jeśli y wynosi 0, to wynikiem jest 1.0 (nawet gdy x wynosi NaN).

       Jeśli x wynosi +0 (-0) i y jest nieparzystą liczbą całkowitą większą od 0, to zwracane jest +0 (-0).

       Jeśli x wynosi 0 i y jest większe od zera, ale nie jest nieparzystą liczbą całkowitą,  to  zwracane  jest
       +0.

       Jeśli x wynosi -1 i y jest dodatnią lub ujemną nieskończonością, to wynikiem jest 1.0

       Jeśli  wartość  bezwzględna  x  jest  mniejsza  niż  1 i y jest ujemną nieskończonością, to wynikiem jest
       dodatnia nieskończoność.

       Jeśli wartość bezwzględna x jest większa od 1 i y jest ujemną nieskończonością, to wynikiem jest +0.

       Jeśli wartość bezwzględna x jest mniejsza niż 1 i y jest dodatnią nieskończonością, to wynikiem jest +0.

       Jeśli wartość bezwzględna x jest większa od 1 i  y  jest  dodatnią  nieskończonością,  to  wynikiem  jest
       dodatnia nieskończoność.

       Jeśli  x  jest  równe  ujemnej  nieskończoności  i  y jest nieparzystą liczbą całkowitą mniejszą od 0, to
       zwracane jest -0.

       Jeśli x jest równe ujemnej nieskończoności i  y  jest  mniejsze  od  0  i  nie  jest  nieparzystą  liczbą
       całkowitą, to zwracane jest +0.

       Jeśli  x  jest  równe  ujemnej  nieskończoności  i  y  jest nieparzystą liczbą całkowitą większą od 0, to
       zwracana jest ujemna nieskończoność.

       Jeśli x jest równe ujemnej nieskończoności i y jest większe od 0 i nie jest nieparzystą liczbą całkowitą,
       to zwracana jest dodatnia nieskończoność.

       Jeśli x jest równe dodatniej nieskończoności i y jest mniejsze od 0, to zwracane jest +0.

       Jeśli x jest równe  dodatniej  nieskończoności  i  y  jest  większe  od  0,  to  zwracana  jest  dodatnia
       nieskończoność.

       Jeśli  x  jest  równe  +0  lub  -0 oraz y jest nieparzystą liczbą całkowitą mniejszą od 0, występuje błąd
       bieguna i funkcje odpowiednio zwracają HUGE_VAL, HUGE_VALF lub HUGE_VALL z takim samym znakiem, jak  znak
       x.

       Jeśli  x  jest  równe  +0  lub  -0  oraz y jest mniejsze od 0, ale nie jest nieparzystą liczbą całkowitą,
       występuje błąd bieguna i funkcje odpowiednio zwracają +HUGE_VAL, +HUGE_VALF lub +HUGE_VALL.

BŁĘDY

       Informacje o tym, jak określić, czy wystąpił  błąd  podczas  wywołania  tych  funkcji,  można  znaleźć  w
       podręczniku math_error(7).

       Mogą wystąpić następujące błędy:

       Błąd dziedziny: x jest ujemne, a y jest liczbą skończoną, ale niecałkowitą
              errno  jest  ustawiane  na  EDOM.  Rzucany  jest wyjątek niepoprawnej operacji zmiennoprzecinkowej
              (FE_INVALID).

       Błąd bieguna: x wynosi zero, a y jest ujemne
              errno  jest  ustawiane  na  ERANGE  (patrz  także  BŁĘDY  IMPLEMENTACJI).  Rzucany  jest   wyjątek
              zmiennoprzecinkowego dzielenia przez zero (FE_DIVBYZERO).

       Błąd zakresu: przekroczenie w górę wartości wynikowej
              errno   jest   ustawiane   na   ERANGE.   Rzucany  jest  wyjątek  przekroczenia  zakresu  operacji
              zmiennoprzecinkowej (FE_OVERFLOW).

       Błąd zakresu: przekroczenie w dół wartości wynikowej
              errno jest ustawiane na  ERANGE.  Rzucany  jest  wyjątek  przekroczenia  w  dół  zakresu  operacji
              zmiennoprzecinkowej (FE_UNDERFLOW).

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
       ┌───────────────────────┬────────────────────────┬─────────┐
       │ InterfejsAtrybutWartość │
       ├───────────────────────┼────────────────────────┼─────────┤
       │ pow(), powf(), powl() │ Bezpieczeństwo wątkowe │ MT-Safe │
       └───────────────────────┴────────────────────────┴─────────┘

ZGODNE Z

       C99, POSIX.1-2001, POSIX.1-2008.

       Wariant zwracający wartość typu double jest zgodny również z SVr4, 4.3BSD, C89.

BŁĘDY

   Historical bugs (now fixed)
       Before  glibc 2.28, on some architectures (e.g., x86-64)  pow()  may be more than 10,000 times slower for
       some inputs than for other nearby inputs.  This affects only pow(), and not  powf()   nor  powl().   This
       problem was fixed in glibc 2.28.

       A number of bugs in the glibc implementation of pow()  were fixed in glibc version 2.16.

       W  wersji 2.9 i wcześniejszych biblioteki glibc w razie wystąpienia błędu bieguna errno jest ustawiane na
       EDOM zamiast na ERANGE, jak tego wymaga standard POSIX. Zostało to poprawione w  wersji  2.10  biblioteki
       glibc.

       W wersji 2.3.2 i wcześniejszych biblioteki glibc, w przypadku wystąpienia przepełnienia w górę lub w dół,
       pow()  generuje  wyjątek przepełnienia oraz niewłaściwy wyjątek niepoprawnej operacji zmiennoprzecinkowej
       (FE_INVALID)

ZOBACZ TAKŻE

       cbrt(3), cpow(3), sqrt(3)

O STRONIE

       Angielska wersja tej strony pochodzi z wydania 5.10 projektu Linux man-pages. Opis  projektu,  informacje
       dotyczące   zgłaszania   błędów   oraz   najnowszą   wersję   oryginału   można   znaleźć   pod   adresem
       https://www.kernel.org/doc/man-pages/.

T◈UMACZENIE

       Autorami polskiego tłumaczenia niniejszej strony  podręcznika  są:  Adam  Byrtek  <alpha@irc.pl>,  Robert
       Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3  lub  nowszej.   Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej manpages-pl-
       list@lists.sourceforge.net.

                                                9 czerwca 2020 r.                                         POW(3)