Provided by: manpages-pl-dev_0.6-2_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():
           _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
           _POSIX_C_SOURCE >= 200112L
           lub cc -std=c99

OPIS

       Funkcja pow() zwraca 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).

ZGODNE Z

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

BŁĘDY IMPLEMENTACJI

       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.

       Jeżeli x jest ujemne, to dla dużych ujemnych lub dodatnich wartości y funkcje zwracają NaN
       z errno ustawionym na EDOM i generują wyjątek  niepoprawnej  operacji  zmiennoprzecinkowej
       (FE_INVALID).  Na  przykład  dla  pow()  można  zaobserwować  to zachowanie, jeśli wartość
       bezwzględna z y jest większa niż około 9.223373e18.

       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  3.71  projektu  Linux  man-pages.  Opis
       projektu,  informacje  dotyczące  zgłaszania błędów, oraz najnowszą wersję oryginału można
       znaleźć pod adresem http://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami polskiego tłumaczenia niniejszej strony podręcznika man  są:  Adam  Byrtek  (PTM)
       <abyrtek@priv.onet.pl> i Robert Luberda <robert@debian.org>.

       Polskie  tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na
       stronie  http://sourceforge.net/projects/manpages-pl/.  Jest   zgodne   z   wersją    3.71
       oryginału.

                                            2010-09-12                                     POW(3)