fma(3) | Library Functions Manual | fma(3) |
NUME
fma, fmaf, fmal - multiplicare și adunare în virgulă mobilă
BIBLIOTECA
Biblioteca de matematică (libm, -lm)
SINOPSIS
#include <math.h>
double fma(double x, double y, double z); float fmaf(float x, float y, float z); long double fmal(long double x, long double y, long double z);
fma(), fmaf(), fmal():
_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
DESCRIERE
Aceste funcții calculează x * y + z. Rezultatul este rotunjit ca o operație ternară în funcție de modul de rotunjire curent (a se vedea fenv(3)).
VALOAREA RETURNATĂ
Aceste funcții returnează valoarea x * y + z, rotunjită ca o operație ternară.
Dacă x sau y nu este un număr („Not a Number”: NaN), se returnează un NaN.
Dacă x ori y este un infinit exact, iar z este un infinit cu semnul opus, apare o eroare de domeniu și se returnează un NaN.
Dacă unul dintre x sau y este un infinit, celălalt este 0, iar z nu este un NaN, apare o eroare de domeniu și se returnează un NaN.
Dacă unul dintre x sau y este un infinit, celălalt este 0, iar z este un NaN, apare o eroare de domeniu și se returnează un NaN.
Dacă x înmulțit cu y nu este un infinit înmulțit cu zero (sau viceversa), iar z este un NaN, se returnează un NaN.
În cazul în care rezultatul este depășit, se produce o eroare de interval și se returnează un infinit cu semnul corect.
În cazul în care rezultatul nu este suficient de mare (sublimită), apare o eroare de interval și se returnează un 0 cu semn.
ERORI-IEȘIRE
Consultați math_error(7) pentru informații despre cum să determinați dacă a apărut o eroare la apelarea acestor funcții.
Pot apărea următoarele erori:
- Eroare de domeniu: x * y + z, sau x * y nu este valid și z nu este un NaN
- Se declanșează o excepție de virgulă mobilă nevalidă (FE_INVALID).
- Eroare de interval: depășire de rezultat
- Se declanșează o excepție de supraîncărcare (de depășire a limitei) în virgulă mobilă (FE_OVERFLOW).
- Eroare de interval: rezultat sub limită
- Se declanșează o excepție în virgulă mobilă de tip sub-limită (FE_UNDERFLOW).
Aceste funcții nu configurează errno.
ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare |
fma(), fmaf(), fmal() | Siguranța firelor | MT-Safe |
STANDARDE
C11, POSIX.1-2008.
ISTORIC
glibc 2.1. C99, POSIX.1-2001.
CONSULTAȚI ȘI
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
2 mai 2024 | Pagini de manual de Linux 6.8 |