Funkcija llrint () sistēmā C ++ noapaļo argumentu līdz integrālai vērtībai, izmantojot pašreizējo noapaļošanas režīmu.
Funkcija llrint () sistēmā C ++ noapaļo argumentu līdz integrālai vērtībai, izmantojot pašreizējo noapaļošanas režīmu.
Pašreizējo noapaļošanas režīmu nosaka funkcija fesetround()
. Tas ir līdzīgs lrint (), bet atgriež garo garo, nevis garo.
llrint () prototips (pēc standarta C ++ 11)
garš garš int llrint (dubultā x); garš garš int llrint (pludiņš x); garš garš int llrint (garš dubultā x); garš garš int llrint (T x); // Neatņemamajam tipam
Funkcija llrint () aizņem vienu argumentu un atgriež veida long long int vērtību. Šī funkcija ir definēta galvenes failā.
llrint () parametri
Funkcija llrint () noapaļo vienu argumenta vērtību.
llrint () Atgriežamā vērtība
Funkcija llrint () noapaļo argumentu x līdz integrālai vērtībai, izmantojot noapaļošanas virzienu, ko norāda fegetround()
un atgriež vērtību long long int
.
Pēc noklusējuma noapaļošanas virziens ir iestatīts uz 'to-nearest'
.
Izmantojot funkciju, noapaļošanas virzienu var iestatīt uz citām vērtībām fesetround()
.
1. piemērs: Kā llrint () darbojas 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; )
Palaidot programmu, izeja būs:
Noapaļošana līdz tuvākajam (11,87) = 12 Noapaļošana līdz tuvākajam (11,5) = 12 noapaļošana uz leju (11,8699) = 11 noapaļošana uz augšu (33,3201) = 34
2. piemērs: funkcija llrint () integrāliem tipiem
#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; )
Palaidot programmu, izeja būs:
Noapaļošana uz leju (15) = 15
Integrālām vērtībām, lietojot funkciju llrint, tiek atgriezta tā pati vērtība kā ievadei. Tāpēc praksē to parasti neizmanto integrālām vērtībām.