Функција лринт () у Ц ++ заокружује аргумент на интегралну вредност користећи тренутни начин заокруживања.
Функција лринт () у Ц ++ заокружује аргумент на интегралну вредност користећи тренутни начин заокруживања. Тренутни начин заокруживања одређује функција fesetround()
. Слично је ринт (), али се враћа long int
.
прототип лринт () (од стандарда Ц ++ 11)
дуго интринт (дупло к); лонг инт лринт (флоат к); дуго интринт (лонг доубле к); дуго интринт (Т к); // За интегрални тип
Функција лринт () узима један аргумент и враћа вредност типа long int
. Ова функција је дефинисана у заглављу датотеке.
лринт () Параметри
Функција лринт () узима једну вредност аргумента да заокружи.
лринт () Повратна вредност
Функција лринт () заокружује аргумент к на интегралну вредност, користећи смер заокруживања наведен у фегетроунд () и враћа вредност у long int
.
Подразумевано је смер заокруживања подешен на „најближи“. Смер заокруживања може се подесити на друге вредности помоћу функције фесетроунд ().
Пример 1: Како лринт () ради у Ц ++?
#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 int result; result = lrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // mid-way values are rounded off to higher integer x = 11.5; result = lrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = lrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = lrint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )
Када покренете програм, излаз ће бити:
Заокруживање на најближе (11,87) = 12 Заокруживање на најближе (11,5) = 12 Заокруживање надоле (11,8699) = 11 Заокруживање нагоре (33,3201) = 34
Пример 2: функција лринт () за интегралне типове
#include #include #include using namespace std; int main() ( int x = 15; long int result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = lrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; )
Када покренете програм, излаз ће бити:
Заокруживање надоле (15) = 15
За интегралне вредности, примена функције лринт враћа исту вредност као и улаз. Тако се у пракси често не користи за интегралне вредности.