Scroll to navigation

remainder(3) Library Functions Manual remainder(3)

NUME

drem, dremf, dreml, remainder, remainderf, remainderl - funcție de rest în virgulă mobilă

BIBLIOTECA

Biblioteca de matematică (libm, -lm)

SINOPSIS

#include <math.h>
/* Versiunile C99 */
double remainder(double x, double y);
float remainderf(float x, float y);
long double remainderl(long double x, long double y);
/* Sinonime învechite */
double drem(double x, double y);
float dremf(float x, float y);
long double dreml(long double x, long double y);

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

remainder():


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

remainderf(), remainderl():


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

drem(), dremf(), dreml():


/* Începând cu glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIERE

Aceste funcții calculează restul împărțirii x la y. Valoarea returnată este x-n*y, unde n este valoarea x / y, rotunjită la cel mai apropiat număr întreg. Dacă valoarea absolută a x-n*y este 0,5, n este ales să fie par.

Aceste funcții nu sunt afectate de modul curent de rotunjire (a se vedea fenv(3)).

Funcția drem() face exact același lucru.

VALOAREA RETURNATĂ

În caz de succes, aceste funcții returnează restul în virgulă mobilă, x-n*y. Dacă valoarea returnată este 0, aceasta are semnul lui x.

Dacă x sau y nu este un număr („Not a Number”: NaN), se returnează un NaN.

Dacă x este un infinit, iar y nu este un NaN, apare o eroare de domeniu și se returnează un NaN.

Dacă y este zero, iar x nu este un NaN, apare o eroare de domeniu și se returnează un NaN.

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:

errno este configurată la EDOM (dar vedeți secțiunea ERORI). Se generează o excepție de virgulă mobilă nevalidă (FE_INVALID).
Aceste funcții nu configurează errno pentru acest caz.
errno este configurată la EDOM. Se generează o excepție de virgulă mobilă nevalidă (FE_INVALID).

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
drem(), dremf(), dreml(), remainder(), remainderf(), remainderl() Siguranța firelor MT-Safe

STANDARDE

Funcțiile remainder(), remainderf() și remainderl() sunt specificate în C99, POSIX.1-2001 și POSIX.1-2008.

Funcția drem() este din 4.3BSD. Variantele float și long double dremf() și dreml() există pe unele sisteme, cum ar fi Tru64 și glibc2. Evitați utilizarea acestor funcții în favoarea remainder() etc.

ERORI

Înainte de glibc 2.15, apelul


remainder(nan(""), 0);

a returnat un NaN, conform așteptărilor, dar a cauzat în mod eronat o eroare de domeniu. De la glibc 2.15, este returnat un NaN silențios (adică nicio eroare de domeniu).

Înainte de glibc 2.15, errno nu era configurată la EDOM pentru eroarea de domeniu care apare atunci când x este un infinit și y nu este un NaN.

EXEMPLE

Apelul „remainder(29.0, 3.0)” returnează -1.

CONSULTAȚI ȘI

div(3), fmod(3), remquo(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 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.

5 februarie 2023 Pagini de manual de Linux 6.03