C++ में, फ्लोटिंग पॉइंट नंबर का आकार या तो 4-बाइट (float) या 8-बाइट (double) होता है। इसलिए यह केवल कुछ दशमलव स्थानों तक ही मान संग्रहीत कर सकता है। उदाहरण के लिए, 1/3 = 0.333333... अनंत तक। यदि हम इसे फ्लोटिंग टाइप वेरिएबल में स्टोर करते हैं, तो यह केवल कुछ महत्वपूर्ण अंक (significant digits) संग्रहीत करेगा। डिफ़ॉल्ट रूप से यह मान 6 होता है। इसलिए सामान्यतः C++ में फ्लोटिंग पॉइंट नंबर 6 दशमलव स्थानों तक प्रदर्शित होते हैं।
सटीकता बदलना (setprecision)
हम setprecision का उपयोग करके सटीकता का आकार बदल सकते हैं। यह <iomanip> हेडर फाइल में मौजूद होता है। आइए एक उदाहरण देखें:
उदाहरण कोड
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double x = 2.3654789;
cout << "3 दशमलव स्थान तक प्रिंट: " << setprecision(3) << x << endl;
cout << "2 दशमलव स्थान तक प्रिंट: " << setprecision(2) << x << endl;
cout << "7 दशमलव स्थान तक प्रिंट: " << setprecision(7) << x << endl;
return 0;
}
आउटपुट
3 दशमलव स्थान तक प्रिंट: 2.365 2 दशमलव स्थान तक प्रिंट: 2.37 7 दशमलव स्थान तक प्रिंट: 2.3654789
नोट: setprecision कुल महत्वपूर्ण अंकों को नियंत्रित करता है, न कि केवल दशमलव स्थानों को। यदि आप निश्चित दशमलव स्थान चाहते हैं, तो fixed मैनिपुलेटर का उपयोग करें।