English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Funzioni di Libreria <cmath> in C++
C ++ 中的 llrint() 函数使用当前的舍入模式将参数舍入为整数值。
当前的舍入模式由 fesetround() 函数确定。它类似于lrint(),但是返回 long long int,而不是 long int。
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); // Per interi
La funzione llrint() accetta un singolo parametro e restituisce un valore di tipo long long int. Questa funzione opera in<cmath>Definito nel file di intestazione.
llrint() funziona con un singolo parametro e arrotonda il valore.
La funzione llrint() utilizza la direzione di arrotondamento specificata da fegetround() per arrotondare il parametro x a un valore intero e restituisce il valore in formato long long int.
Per impostazione predefinita, la direzione di arrotondamento è impostata su 'to-nearest'.
Puoi impostare la direzione di arrotondamento con la funzione fesetround() a valori diversi.
#include <iostream> #include <cmath> #include <cfenv> using namespace std; int main() { // Per impostazione predefinita, la direzione di arrotondamento è la più vicina, ossia fesetround(FE_TONEAREST) double x = 11.87; long long int result; result = llrint(x); cout << "Arrotondamento al più vicino (" << x << ") = " << result << endl; // Valore intermedio arrotondato al numero intero più alto x = 11.5; result = llrint(x); cout << "Arrotondamento al più vicino (" << x << ") = " << result << endl; // Imposta la direzione di arrotondamento su DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = llrint(x); cout << "Arrotondamento verso il basso (" << x << ") = " << result << endl; // Imposta la direzione di arrotondamento su UPWARD fesetround(FE_UPWARD); x = 33.32; result = llrint(x); cout << "Arrotondamento verso l'alto (" << x << ") = " << result << endl; return 0; }
Quando si esegue il programma, l'output è:
Arrotondamento al più vicino (11.87) = 12 Arrotondamento al più vicino (11.5) = 12 Arrotondamento verso il basso (11.8699) = 11 Arrotondamento verso l'alto (33.3201) = 34
#include <iostream> #include <cmath> #include <cfenv> using namespace std; int main() { int x = 15; long long int result; //Imposta la direzione di arrotondamento su DOWNWARD fesetround(FE_DOWNWARD); result = llrint(x); cout << "Arrotondamento verso il basso (" << x << ") = " << result << endl; return 0; }
Quando si esegue il programma, l'output è:
Arrotondamento verso il basso (15) = 15
Per valori interi, la funzione llrint restituisce lo stesso valore dell'input. Pertanto, non viene utilizzata spesso per rappresentare valori interi.