Funkcija rint () v jeziku C ++ argument zaokroži na integralno vrednost s trenutnim načinom zaokroževanja.
Funkcija rint () v jeziku C ++ argument zaokroži na integralno vrednost s trenutnim načinom zaokroževanja. Trenutni način zaokroževanja določa funkcija fesetround ().
prototip rint () (od standarda C ++ 11)
dvojni rint (dvojni x); plovec rint (float x); dolga dvojna rint (dolga dvojna x); dvojno rint (T x); // Za integralni tip
Funkcija rint () sprejme en argument in vrne vrednost tipa double, float ali long double type. Ta funkcija je definirana v datoteki glave.
parametri rint ()
Funkcija rint () zaokroži eno vrednost argumenta.
rint () Vrnjena vrednost
Funkcija rint () zaokroži argument x na integralno vrednost z uporabo smeri zaokroževanja, ki jo določa fegetround (), in vrne vrednost. Privzeto je smer zaokroževanja nastavljena na „najbližje“. Smer zaokroževanja lahko nastavite na druge vrednosti s funkcijo fesetround ().
Primer 1: Kako rint () deluje v jeziku C ++?
#include #include #include using namespace std; int main() ( // by default, rounding direction is to-nearest i.e. fesetround(FE_TONEAREST) double x = 11.87, result; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // upper value is taken for mid-way values x = 11.5; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = rint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )
Ko zaženete program, bo rezultat:
Zaokroževanje na najbližje (11,87) = 12 Zaokroževanje na najbližje (11,5) = 12 Zaokroževanje navzdol (11,8699) = 11 Zaokroževanje navzgor (33,3201) = 34
Primer 2: funkcija rint () za integralne tipe
#include #include #include using namespace std; int main() ( int x = 15; double result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; )
Ko zaženete program, bo rezultat:
Zaokroževanje navzdol (15) = 15
Za integralne vrednosti uporaba funkcije rint vrne enako vrednost kot vhod. Zato se v praksi pogosto ne uporablja za integralne vrednosti.