C ++ llrint () - biblioteka standardowa C ++

Funkcja llrint () w C ++ zaokrągla argument do wartości całkowitej przy użyciu bieżącego trybu zaokrąglania.

Funkcja llrint () w C ++ zaokrągla argument do wartości całkowitej przy użyciu bieżącego trybu zaokrąglania.

Bieżący tryb zaokrąglania jest określany przez funkcję fesetround(). Jest podobny do lrint (), ale zwraca long long int zamiast long int.

llrint () prototyp (od standardu C ++ 11)

long long int llrint (double x); long long int llrint (float x); long long int llrint (long double x); long long int llrint (T x); // Dla typu całkowitego

Funkcja llrint () przyjmuje pojedynczy argument i zwraca wartość typu long long int. Ta funkcja jest zdefiniowana w pliku nagłówkowym.

llrint () Parametry

Funkcja llrint () przyjmuje wartość pojedynczego argumentu do zaokrąglenia.

llrint () Wartość zwracana

Funkcja llrint () zaokrągla argument x do wartości całkowitej, używając kierunku zaokrąglania określonego przez fegetround()i zwraca wartość w long long int.

Domyślnie kierunek zaokrąglania jest ustawiony na 'to-nearest'.

Kierunek zaokrąglenia można ustawić na inne wartości za pomocą fesetround()funkcji.

Przykład 1: Jak llrint () działa w 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; )

Po uruchomieniu programu wynik będzie następujący:

 Zaokrąglenie do najbliższego (11,87) = 12 Zaokrąglenie do najbliższego (11,5) = 12 Zaokrąglenie w dół (11,8699) = 11 Zaokrąglenie w górę (33,3201) = 34

Przykład 2: funkcja llrint () dla typów całkowitych

 #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; ) 

Po uruchomieniu programu wynik będzie następujący:

 Zaokrąglanie w dół (15) = 15 

W przypadku wartości całkowitych zastosowanie funkcji llrint zwraca tę samą wartość co dane wejściowe. Dlatego w praktyce nie jest powszechnie używany dla wartości całkowitych.

Interesujące artykuły...