के लिए दशमलव स्थानों की न्यूनतम संख्या निर्धारित करना क्या कोई std :: ostream आउटपुट होने वाले दशमलव स्थानों की "न्यूनतम" संख्या सेट करने का कोई तरीका है?std :: ostream precision
उदाहरण के लिए, कहते हैं कि मैं दो अज्ञात डबल चर है कि मैं (मानों यहां चित्रण के लिए जोड़ा) प्रिंट करना चाहते हैं:
double a = 0;
double b = 0.123456789;
मैं इतना है कि मैं उत्पादन b
वास्तव में अपनी अधिकतम दशमलव परिशुद्धता सेट कर सकते हैं
std::cout << std::setprecision(9) << b << std::endl;
>>> 0.123456789
वहाँ एक "न्यूनतम" परिशुद्धता (दशमलव स्थानों की एक न्यूनतम संख्या) स्थापित करने के लिए एक रास्ता है, जबकि "अधिकतम" परिशुद्धता को बनाए रखना है, ताकि
std::cout << a << std::endl << b << std::endl;
पैदावार
0.0
0.123456789
नहीं
0
0.123456789
?
धन्यवाद! फिल
इसका संक्षिप्त उत्तर "नहीं" है। धारा में केवल एक सटीक सेटिंग है, जिसमें अधिकतम और न्यूनतम परिशुद्धता के बीच अंतर करने की कोई सुविधा नहीं है। आपकी उदार सलाह के लिए सभी को धन्यवाद!
प्रश्न को ध्यान से पढ़ें। फिल दशमलव बिंदु के बाद सटीकता के 1 अंकों की न्यूनतम अवधि चाहता है, लेकिन यदि शून्य-शून्य अंक हैं तो अधिक। – Oddthinking
@ फिल: आपको http://stackoverflow.com/questions/2475642/how-to-achieve-the-following-c-output-formatting सहायक मिल सकता है। –
धन्यवाद रोजर। यह बहुत उपयोगी है। आपका फॉर्मेट उदाहरण जाने का सही तरीका दिखता है। –