C ++ llrint () - C ++ standardna biblioteka

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.

Zanimljivi članci...