Funkcija rint () u C ++ zaokružuje argument na integralnu vrijednost pomoću trenutnog načina zaokruživanja.
Funkcija rint () u C ++ zaokružuje argument na integralnu vrijednost pomoću trenutnog načina zaokruživanja. Trenutni način zaokruživanja određuje se funkcijom fesetround ().
prototip rint () (od standarda C ++ 11)
dvostruki rint (dvostruki x); plovak rint (float x); dugi dvostruki rint (dugi dvostruki x); dvostruko runt (T x); // Za integralni tip
Funkcija rint () uzima jedan argument i vraća vrijednost tipa double, float ili long double type. Ova je funkcija definirana u zaglavnoj datoteci.
rint () parametri
Funkcija rint () uzima jednu vrijednost argumenta da zaokruži.
rint () Povratna vrijednost
Funkcija rint () zaokružuje argument x na integralnu vrijednost, koristeći smjer zaokruživanja naveden u fegetround () i vraća vrijednost. Prema zadanim postavkama smjer zaokruživanja postavljen je na 'najbliže'. Smjer zaokruživanja može se postaviti na druge vrijednosti pomoću funkcije fesetround ().
Primjer 1: Kako rint () radi u 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; )
Kada pokrenete program, izlaz će biti:
Zaokruživanje na najbliže (11,87) = 12 Zaokruživanje na najbliže (11,5) = 12 Zaokruživanje prema dolje (11,8699) = 11 Zaokruživanje naviše (33,3201) = 34
Primjer 2: funkcija rint () za integralne tipove
#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; )
Kada pokrenete program, izlaz će biti:
Zaokruživanje prema dolje (15) = 15
Za integralne vrijednosti, primjena funkcije rint vraća istu vrijednost kao i ulaz. Stoga se u praksi često ne koristi za integralne vrijednosti.