C ++ llrint () - Стандартна бібліотека C ++

Функція llrint () в C ++ округлює аргумент до інтегрального значення, використовуючи поточний режим округлення.

Функція llrint () в C ++ округлює аргумент до інтегрального значення, використовуючи поточний режим округлення.

Поточний режим округлення визначається функцією fesetround(). Це схоже на lrint (), але повертає long long int замість long int.

прототип llrint () (За стандартом C ++ 11)

long long int llrint (подвійний x); long long int llrint (float x); long long int llrint (long double x); довгий довгий int llrint (T x); // Для цілісного типу

Функція llrint () приймає один аргумент і повертає значення типу long long int. Ця функція визначена у файлі заголовка.

Параметри llrint ()

Функція llrint () приймає значення одного аргументу для округлення.

llrint () Повернене значення

Функція llrint () округлює аргумент x до інтегрального значення, використовуючи напрямок округлення, вказаний fegetround()і повертає значення в long long int.

За замовчуванням для напрямку округлення встановлено значення 'to-nearest'.

Напрямок округлення можна встановити на інші значення за допомогою fesetround()функції.

Приклад 1: Як llrint () працює в 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; )

Коли ви запускаєте програму, результат буде:

 Округлення до найближчого (11,87) = 12 Округлення до найближчого (11,5) = 12 Округлення вниз (11,8699) = 11 Округлення вгору (33,3201) = 34

Приклад 2: Функція llrint () для інтегральних типів

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

Коли ви запускаєте програму, результат буде:

 Округлення вниз (15) = 15 

Для інтегральних значень застосування функції llrint повертає те саме значення, що і вхідні дані. Тому на практиці він не використовується для інтегральних величин.

Цікаві статті...