इस खंड में हम C++ में lrint() और llrint() देखेंगे। पहले lrint() पर चर्चा करते हैं।
lrint() फंक्शन का उपयोग आर्गुमेंट में दिए गए फ्रैक्शनल मान को वर्तमान राउंडिंग मोड का उपयोग करके इंटीग्रल वैल्यू में राउंड करने के लिए किया जाता है। वर्तमान मोड fesetround() का उपयोग करके निर्धारित किया जाता है।
यह lrint() फंक्शन इनपुट पैरामीटर के रूप में डबल या फ्लोट या इंटीजर मान लेता है, और फ्रैक्शनल पार्ट को इंटीग्रल पार्ट में राउंड करके लॉन्ग इंट वैल्यू लौटाता है।
उदाहरण
#include <cfenv> #include <cmath> #include <iostream> using namespace std; main() { int x = 40; long int res; fesetround(FE_DOWNWARD); // राउंडिंग दिशा को DOWNWARD के रूप में सेट करना res = lrint(x); cout << "Downward rounding of " << x << " is " << res << endl; }
आउटपुट
Downward rounding of 40.0235 is 40
llrint() फंक्शन का उपयोग आर्गुमेंट में दिए गए फ्रैक्शनल मान को वर्तमान राउंडिंग मोड का उपयोग करके इंटीग्रल वैल्यू में राउंड करने के लिए किया जाता है। वर्तमान मोड fesetround() का उपयोग करके निर्धारित किया जाता है।
यह lrint() फंक्शन इनपुट पैरामीटर के रूप में डबल या फ्लोट या इंटीजर मान लेता है, और फ्रैक्शनल पार्ट को इंटीग्रल पार्ट में राउंड करके लॉन्ग लॉन्ग इंट वैल्यू लौटाता है।
उदाहरण
#include <cfenv> #include <cmath> #include <iostream> using namespace std; main(){ double a; long int res; fesetround(FE_UPWARD); //राउंडिंग दिशा को अपवर्ड सेट करें a = 40.3; res = llrint(a); cout << "Upward rounding of " << a << " is " << res << endl; fesetround(FE_DOWNWARD); //राउंडिंग दिशा को डाउनवर्ड सेट करें a = 40.88; res = llrint(a); cout << "Downward rounding of " << a << " is " << res << endl; }
आउटपुट
Upward rounding of 40.3 is 41 Downward rounding of 40.88 is 40