rint(3)

NUME
nearbyint, nearbyintf, nearbyintl, nearbyintl, rint, rintf, rintl - rotunjesc la cel mai apropiat număr întreg

BIBLIOTECA
Biblioteca de matematică (libm, -lm)

SINOPSIS
#include <math.h>

double nearbyint(double x);
float nearbyintf(float x);
long double nearbyintl(long double x);

double rint(double x);
float rintf(float x);
long double rintl(long double x);

    Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

nearbyint(), nearbyintf(), nearbyintl():
    _POSIX_C_SOURCE >= 200112L || _ISOC99_SOURCE

rint():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || _XOPEN_SOURCE >= 500
        || /* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

rintf(), rintl():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || /* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIERE
Funcțiile nearbyint(), nearbyintf() și nearbyintl() își rotunjesc argumentul la o valoare întreagă în format cu virgulă mobilă, utilizând direcția de rotunjire curentă (a se vedea fesetround(3)) și fără a ridica excepția inexact. Atunci când direcția de rotunjire curentă este la cel mai apropiat, aceste funcții rotunjesc cazurile la jumătate de drum (valoare) la un număr întreg par, în conformitate cu IEEE-754.

Funcțiile rint(), rintf() și rintl() fac același lucru, dar vor ridica excepția inexact (FE_INEXACT, verificabilă prin fetestexcept(3)) atunci când valoarea rezultatului diferă de cea a argumentului.

VALOAREA RETURNATĂ
Aceste funcții returnează valoarea întreagă rotunjită.

Dacă x este un număr întreg, +0, -0, NaN (nu este un număr) sau infinit, se returnează x însuși.

ERORI-IEȘIRE
Nu apar erori.

ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare
nearbyint(), nearbyintf(), nearbyintl(), rint(), rintf(), rintl() | Siguranța firelor | MT-Safe

STANDARDE
C11, POSIX.1-2008.

ISTORIC
C99, POSIX.1-2001.

SUSv2 și POSIX.1-2001 conțin un text despre depășire (care ar putea configura errno la ERANGE sau ridica o excepție FE_OVERFLOW). În practică, rezultatul nu poate depăși limitarea pe nicio mașină curentă, astfel încât această chestie de tratare a erorilor era doar un nonsens. Mai precis, depășirea poate avea loc numai atunci când valoarea maximă a exponentului este mai mică decât numărul de biți de mantisă (partea zecimală pozitivă a unui logaritm). Pentru numerele cu virgulă mobilă standard IEEE-754 pe 32 și 64 de biți, valoarea maximă a exponentului este 127 (respectiv, 1023), iar numărul de biți de mantisă, inclusiv bitul implicit, este 24 (respectiv, 53). Acest lucru a fost eliminat în POSIX.1-2008.

Dacă doriți să stocați valoarea rotunjită într-un tip întreg, probabil că doriți să utilizați în schimb una dintre funcțiile descrise în lrint(3).

CONSULTAȚI ȘI
ceil(3), floor(3), lrint(3), round(3), trunc(3)

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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.