C ++ llrint () - C ++ standaardbibliotheek

De functie llrint () in C ++ rondt het argument af op een integrale waarde met behulp van de huidige afrondingsmodus.

De functie llrint () in C ++ rondt het argument af op een integrale waarde met behulp van de huidige afrondingsmodus.

De huidige afrondingsmodus wordt bepaald door de functie fesetround(). Het is vergelijkbaar met lrint (), maar retourneert long long int in plaats van long int.

llrint () prototype (vanaf C ++ 11-standaard)

lange lange int llrint (dubbele x); long long int llrint (float x); lange lange int llrint (lange dubbele x); lange lange int llrint (T x); // Voor integraal type

De functie llrint () accepteert één argument en retourneert een waarde van het type long long int. Deze functie is gedefinieerd in het header-bestand.

llrint () Parameters

De functie llrint () heeft een enkele argumentwaarde nodig om af te ronden.

llrint () Retourwaarde

De functie llrint () rondt het argument x af op een integrale waarde, met behulp van de afrondingsrichting gespecificeerd door, fegetround()en retourneert de waarde in long long int.

Standaard is de afrondingsrichting ingesteld op 'to-nearest'.

De afrondingsrichting kan met de fesetround()functie op andere waarden worden ingesteld .

Voorbeeld 1: Hoe werkt llrint () in 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; )

Wanneer u het programma uitvoert, is de uitvoer:

 Afronden op dichtstbijzijnde (11,87) = 12 Afronding op dichtstbijzijnde (11,5) = 12 Afronding naar beneden (11,8699) = 11 Afronding naar boven (33,3201) = 34

Voorbeeld 2: functie llrint () voor integrale typen

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

Wanneer u het programma uitvoert, is de uitvoer:

 Naar beneden afronden (15) = 15 

Voor integrale waarden retourneert het toepassen van de functie llrint dezelfde waarde als de invoer. Het wordt dus in de praktijk niet vaak gebruikt voor integrale waarden.

Interessante artikelen...