remainder
, , remainderf
remainderl
Vypočítá zbytek podílu dvou hodnot s plovoucí desetinou čárkou zaokrouhlenou na nejbližší celočíselnou hodnotu.
Syntaxe
double remainder( double x, double y );
float remainderf( float x, float y );
long double remainderl( long double x, long double y );
#define remainder(X, Y) // Requires C11 or higher
float remainder( float x, float y ); /* C++ only */
long double remainder( long double x, long double y ); /* C++ only */
Parametry
x
Čitatel.
y
Jmenovatel.
Vrácená hodnota
Zbytek s plovoucí desetinou čárkou x
/ y
. Pokud je hodnota y
0,0, remainder
vrátí tichou hodnotu NaN. Informace o reprezentaci tichého NaN rodinou printf
naleznete v tématuprintf
, _printf_l
, wprintf
, . _wprintf_l
Poznámky
Funkce remainder
vypočítají zbytek x / y
r
s plovoucí desetinnou čárkou tak, že x = n * y + r
, kde n
je celé číslo nejblíže hodnotě x / y
a n
je dokonce kdykoli |n - x / y| = 1/2
. Pokud r = 0
má r
stejné znaménko jako x
.
Vzhledem k tomu, že jazyk C++ umožňuje přetížení, můžete volat přetížení remainder
, která přebírají a vracejí nebo vrací float
hodnoty long double
. Pokud v programu jazyka C nepoužíváte <makro tgmath.h> k volání této funkce, remainder
vždy přebírá dva double
argumenty a vrací .double
Pokud použijete <makro tgmath.h>remainder()
, typ argumentu určuje, která verze funkce je vybrána. Podrobnosti najdete v tématu Matematika pro obecné typy.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Požadavky
Function | Povinná hlavička (C) | Povinná hlavička (C++) |
---|---|---|
remainder , , remainderf remainderl |
<math.h> | <cmath> nebo <math.h> |
remainder makro |
<tgmath.h> |
Informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
// crt_remainder.c
// This program displays a floating-point remainder.
#include <math.h>
#include <stdio.h>
int main( void )
{
double w = -10.0, x = 3.0, z;
z = remainder(w, x);
printf("The remainder of %.2f / %.2f is %f\n", w, x, z);
}
The remainder of -10.00 / 3.00 is -1.000000
Viz také
Podpora pro matematiku a plovoucí desetinou čárku
ldiv
, lldiv
imaxdiv
fmod
, fmodf
remquo
, , remquof
remquol