(सी ++) वास्तविक संख्या


<थ>फंक्शन <थ>विवरण

वास्तविक संख्याएं

<पूर्व> फ्लोट आर = 5.0 5.0 मान एक संख्या है जिसे दशमलव अंश के रूप में दर्शाया जाता है (एक पूर्णांक और एक भिन्नात्मक भाग होता है)। कंप्यूटर विज्ञान में, ऐसी संख्याओं को वास्तविक संख्याएँ कहा जाता है।
 
एक वास्तविक संख्या एक संख्या है जिसमें एक पूर्णांक भाग और एक भिन्नात्मक भाग होता है। पूर्णांक और भिन्नात्मक भागों को एक बिंदु द्वारा एक दूसरे से अलग किया जाता है, गणित की तरह अल्पविराम नहीं।

भले ही संख्या का भिन्नात्मक भाग शून्य के बराबर हो, जैसा कि उदाहरण में r चर में है, फिर भी संकलक स्मृति में एक वास्तविक चर बना देगा। बिंदु, जैसा कि अनुवादक के लिए एक संकेत था कि एक वास्तविक चर बनाना आवश्यक है। 

बहुत बड़ी और बहुत छोटी संख्या  "फ़्लोटिंग पॉइंट" का उपयोग करके लिखी जाती हैं (तथाकथित वैज्ञानिक प्रारूप में)।  
वैज्ञानिक प्रारूप में, एक संख्या को mantissa(संख्या का महत्वपूर्ण भाग) और घातांक के रूप में दर्शाया जाता है। लिखे जाने पर, मंटिसा और प्रतिपादक एक दूसरे से अक्षर e से अलग होते हैं (कुछ हद तक 10 को दर्शाते हैं)। 
उदाहरण के लिए, आप एक इलेक्ट्रॉन के आवेश के मान को चर 
में संग्रहीत कर सकते हैं ( \(1,60217662 \बार 10^{-19}\) Kl),   <पूर्व> फ्लोटEl= 1.60217662e-19 // एक सकारात्मक आदेश के लिए, + चिह्न छोड़ा जा सकता है
लगभग सभी वास्तविक संख्याओं को कंप्यूटर मेमोरी में पूर्ण सटीकता के साथ संग्रहीत नहीं किया जा सकता है, क्योंकि उनके भंडारण के लिए सीमित संख्या में बिट्स आवंटित किए जाते हैं। इसलिए, वास्तविक संख्याओं की गणना करते समय, प्रतिनिधित्व की अशुद्धि से जुड़ी त्रुटियां जमा होती हैं। इसके अलावा, जितनी कम जगह आवंटित की जाएगी, यह त्रुटि उतनी ही अधिक होगी। C++ में त्रुटि को कम करने के लिए, double प्रकार का उपयोग किया जाता है, जो स्मृति में दोहरी सटीकता के साथ एक वास्तविक संख्या को संग्रहीत करता है (मेमोरी में आठ बाइट्स रखता है, जबकि float प्रकार - 4 बाइट्स)।

दर्ज करें

आप इनपुट स्ट्रीम से कई वास्तविक चर दर्ज कर सकते हैं और उन्हें मानक तरीके से चर में लिख सकते हैं: फ्लोट एक्स, वाई; सिने>> एक्स&जीटी;&जीटी; वाई; पहली संख्या x चर में जाती है, दूसरी - y में।



निष्कर्ष

वास्तविक संख्या प्रदर्शित करते समय, 6 दशमलव स्थान डिफ़ॉल्ट रूप से प्रदर्शित होते हैं, वैज्ञानिक प्रारूप या निश्चित बिंदु स्वचालित रूप से चयनित होते हैं।
आउटपुट स्वरूप को अनुकूलित किया जा सकता है। इसके लिए, एक अतिरिक्त लाइब्रेरी iomanip का उपयोग किया जाता है - मैनिपुलेटर्स जो आउटपुट को नियंत्रित करते हैं।
निश्चित बिंदु प्रारूप में आउटपुट के लिए, वैज्ञानिक प्रारूप के लिए   फिर आपको  सेटप्रिसिजन() मैनिपुलेटर का उपयोग करके भिन्नात्मक भाग में अंकों की संख्या निर्धारित करने की आवश्यकता है।  setw() मैनिपुलेटर का उपयोग करके, आप सेट कर सकते हैं संख्या आउटपुट के लिए आवंटित पदों की कुल संख्या।

 
उदाहरण
फ्लोट एक्स = 1.0/6; cout << स्थिर << सेट प्रेसिजन (9); // भिन्नात्मक भाग में 9 अंक प्रदर्शित करने के लिए सेट cout << सेट (12) << एक्स;
स्क्रीन प्रदर्शित होगी <पूर्व> _0.166666672
सभी आदेशों को एक पंक्ति में लिखा जा सकता है: <पूर्व> cout << स्थिर << सेटप्रिसिजन(9) << सेट (12) << एक्स;

वास्तविक संख्याओं के साथ संक्रियाएं। cmath

मॉड्यूल वास्तविक संख्याओं के साथ काम करते समय, हम पहले से ही परिचित गणित मॉड्यूल का उपयोग कर सकते हैं, जिसमें बड़ी संख्या में अंतर्निहित फ़ंक्शन होते हैं। 
समस्याओं को हल करते समय, वास्तविक संख्याओं को निकटतम पूर्णांक मानों में गोल करना अक्सर आवश्यक होता है। इसके दो कार्य हैं।

याद रखने की जरूरत है!
1. स्पष्ट प्रकार के रूपांतरण के साथ ( float x=1.5; int y = int(x))  -  वास्तविक संख्या का भिन्नात्मक भाग काट दिया जाता है (y = 1); 
2. फ़ंक्शन <कोड>फ़्लोर(x) -   x (राउंड डाउन);
से कम या बराबर सबसे बड़ा पूर्णांक देता है 3. फ़ंक्शन <कोड>छत(x) -   x (राउंड अप) के बराबर या उससे छोटा पूर्णांक देता है।

cmath मॉड्यूल में निहित सबसे उपयोगी कार्य यहां दिए गए हैं। <टेबल बॉर्डर = "1" सेलपैडिंग = "4"> <शरीर>
राउंडिंग
राउंड (x)
सी ++ 11
किसी संख्या को निकटतम पूर्णांक तक पूर्णांक बनाता है। यदि संख्या का भिन्नात्मक भाग 0.5 है, तो संख्या को निकटतम पूर्ण संख्या में गोल कर दिया जाता है। 
trunc(x)
सी ++ 11
आंशिक भाग को हटा देता है
मंजिल (x) किसी संख्या को नीचे ("फ्लोर") राउंड करता है, इस प्रकार  -2
ceil(x) किसी संख्या को ऊपर ("सीलिंग") राउंड करता है, जबकि ceil(1.5) == 2ceil(-1.5) ==  ; -1
abs(x) मॉड्यूलो (पूर्ण मान)।
fabs(x) मॉड्यूलो वास्तविक संख्या
जड़ें, लघुगणक
sqrt(x) वर्गमूल। उपयोग: y = sqrt(x)
पाउ(x, y) x को y की घात तक बढ़ाता है। \(x^y\)
लॉग (x) प्राकृतिक लघुगणक। 
exp(x) प्राकृतिक लघुगणकों का आधार e = 2.71828...
त्रिकोणमिति
sin(x) रेडियन में निर्दिष्ट कोण की ज्या
cos(x) रेडियन में निर्दिष्ट कोण की कोसाइन
tan(x) रेडियन में निर्दिष्ट कोण की स्पर्शरेखा
asin(x) Arcsine, रेडियन में मान लौटाता है
acos(x) चाप कोसाइन, रेडियन में मान लौटाता है
atan(x) आर्कटैंजेंट, रेडियन में मान लौटाता है
atan2(y, x) (x, y) बिंदु का ध्रुवीय कोण (रेडियन में)।