C ++ llrint () - Standardna knjižnica C ++

Funkcija llrint () v jeziku C ++ argument zaokroži na integralno vrednost s trenutnim načinom zaokroževanja.

Funkcija llrint () v jeziku C ++ argument zaokroži na integralno vrednost s trenutnim načinom zaokroževanja.

Trenutni način zaokroževanja določa funkcija fesetround(). Podoben je lrint (), vendar vrne long long int namesto long int.

prototip llrint () (od standarda C ++ 11)

dolg dolg int llrint (dvojni x); dolg dolg int llrint (float x); dolg dolg int llrint (dolg dvojni x); dolg dolg int llrint (T x); // Za integralni tip

Funkcija llrint () sprejme en argument in vrne vrednost tipa long long int. Ta funkcija je definirana v datoteki glave.

llrint () Parametri

Funkcija llrint () zaokroži eno vrednost argumenta.

llrint () Vrnjena vrednost

Funkcija llrint () zaokroži argument x na integralno vrednost s pomočjo smeri zaokroževanja, ki jo določi fegetround()in vrne vrednost v long long int.

Privzeto je nastavljena smer zaokroževanja 'to-nearest'.

Smer zaokroževanja lahko s fesetround()funkcijo nastavite na druge vrednosti .

Primer 1: Kako llrint () deluje v jeziku 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; )

Ko zaženete program, bo rezultat:

 Zaokroževanje na najbližje (11,87) = 12 Zaokroževanje na najbližje (11,5) = 12 Zaokroževanje navzdol (11,8699) = 11 Zaokroževanje navzgor (33,3201) = 34

Primer 2: llrint () funkcija za integralne tipe

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

Ko zaženete program, bo rezultat:

 Zaokroževanje navzdol (15) = 15 

Za integralne vrednosti uporaba funkcije llrint vrne enako vrednost kot vhod. Zato se v praksi pogosto ne uporablja za integralne vrednosti.

Zanimive Članki...