hypot, hypotf, hypotl - funkcja odległości euklidesowej
Math library (
libm,
-lm)
#include <math.h>
double hypot(double x, double y);
float hypotf(float x, float y);
long double hypotl(long double x, long double y);
hypot():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| _XOPEN_SOURCE
|| /* Since glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
hypotf(),
hypotl():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* Od glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc w wersji <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
Funkcje te zwracają sqrt(
x*
x+
y*
y). Jest to
długość przeciwprostokątnej trójkąta
prostokątnego o bokach długości
x i
y, lub
odległość punktu (
x,
y) od początku
układu współrzędnych.
Wyliczenia są prowadzone bez przejmowania się nadmiarami lub
niedomiarami pośrednich kroków obliczeń.
On success, these functions return the length of the hypotenuse of a
right-angled triangle with sides of length
x and
y.
Jeśli
x lub
y jest równe
nieskończoności, to zwracana jest dodatnia
nieskończoność.
Jeśli
x lub
y jest równe NaN, a drugi argument nie
jest nieskończonością, to zwracane jest NaN.
W przypadku przepełnienia wyniku operacji, występuje
błąd zakresu i funkcje zwracają odpowiednio
HUGE_VAL,
HUGE_VALF lub
HUGE_VALL.
Jeśli oba argumenty są zdenormalizowane, wynik także jest
zdenormalizowany, występuje błąd dziedziny i zwracany
jest poprawny wynik.
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 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
- Rzucany jest wyjątek przekroczenia w
dół zakresu operacji zmiennoprzecinkowej (
FE_UNDERFLOW).
- Funkcje te nie ustawiają errno w tym
przypadku.
Informacje o pojęciach używanych w tym rozdziale można
znaleźć w podręczniku
attributes(7).
Interfejs |
Atrybut |
Wartość |
hypot(), hypotf(), hypotl() |
Bezpieczeństwo wątkowe |
MT-Safe |
C99, POSIX.1-2001, POSIX.1-2008.
Wariant zwracający wartość typu
double jest zgodny
również z SVr4, 4.3BSD.
cabs(3),
sqrt(3)
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Andrzej Krzysztofowicz <
[email protected]>, Robert
Luberda <
[email protected]> i Michał Kułach
<
[email protected]>
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
[email protected]