Funkcija llrint () u C ++ zaokružuje argument na integralnu vrijednost pomoću trenutnog načina zaokruživanja.
Funkcija llrint () u C ++ zaokružuje argument na integralnu vrijednost pomoću trenutnog načina zaokruživanja.
Trenutni način zaokruživanja određuje funkcija fesetround()
. Slično je lrint (), ali vraća long long int umjesto long int.
prototip llrint () (od standarda C ++ 11)
long long int llrint (dvostruki x); long long int llrint (float x); long long int llrint (dugi dvostruki x); long long int llrint (T x); // Za integralni tip
Funkcija llrint () uzima jedan argument i vraća vrijednost tipa long long int. Ova je funkcija definirana u zaglavnoj datoteci.
llrint () Parametri
Funkcija llrint () uzima jednu vrijednost argumenta da zaokruži.
llrint () Povratna vrijednost
Funkcija llrint () zaokružuje argument x na integralnu vrijednost, koristeći smjer zaokruživanja naveden od fegetround()
i vraća vrijednost u long long int
.
Prema zadanim postavkama smjer zaokruživanja postavljen je na 'to-nearest'
.
Smjer zaokruživanja može se podesiti na druge vrijednosti pomoću fesetround()
funkcije.
Primjer 1: Kako llrint () 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; long long int result; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // mid-way values are rounded off to higher integer x = 11.5; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = llrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = llrint(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: llrint () funkcija za integralne tipove
#include #include #include using namespace std; int main() ( int x = 15; long long int result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = llrint(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 llrint vraća istu vrijednost kao i ulaz. Stoga se u praksi često ne koristi za integralne vrijednosti.