"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > परिशुद्धता क्षेत्र वास्तव में `fmt.Printf` में `%g` के साथ कैसे काम करता है?

परिशुद्धता क्षेत्र वास्तव में `fmt.Printf` में `%g` के साथ कैसे काम करता है?

2024-11-08 को प्रकाशित
ब्राउज़ करें:153

How Does the Precision Field Actually Work with `%g` in `fmt.Printf`?

%g के लिए चौड़ाई और सटीक फ़ील्ड के साथ fmt.Printf का अप्रत्याशित व्यवहार

अस्पष्ट दस्तावेज़ीकरण को समझना

fmt.Printf के फ़ॉर्मेटिंग फ़ील्ड के लिए दस्तावेज़ फ़्लोटिंग-पॉइंट मानों के लिए कहा गया है कि:

"फ़्लोटिंग-पॉइंट के लिए मान, चौड़ाई फ़ील्ड की न्यूनतम चौड़ाई निर्धारित करती है
और परिशुद्धता दशमलव के बाद स्थानों की संख्या निर्धारित करती है, यदि
उपयुक्त हो, सिवाय इसके कि %g/%G के लिए यह अंकों की कुल संख्या निर्धारित करता है।"

भ्रमित करने वाली बात अंतिम वाक्य में "यह" के उपयोग में निहित है। यह वास्तव में "परिशुद्धता" को संदर्भित करता है, न कि "चौड़ाई।"

% का सच्चा व्यवहार। वास्तव में केवल दशमलव बिंदु के बाद के अंकों पर विचार करता है।

उदाहरण के लिए, 123456.789 को इस प्रकार स्वरूपित किया जाएगा 123.4e 03 क्योंकि %9g प्रभावी रूप से किसी भी अग्रणी शून्य को काट देता है।

इसके विपरीत, 0.0000012345 को 1.2345e-06 के रूप में स्वरूपित किया जाएगा क्योंकि %9g दशमलव बिंदु के बाद सभी महत्वपूर्ण अंकों पर विचार करता है।

चौड़ाई और परिशुद्धता का प्रभाव

चौड़ाई फ़ील्ड निर्दिष्ट करती है दशमलव बिंदु और घातांक (यदि कोई हो) सहित संपूर्ण स्वरूपित स्ट्रिंग की न्यूनतम चौड़ाई।

परिशुद्धता फ़ील्ड, जैसा कि ऊपर वर्णित है, दशमलव बिंदु के बाद महत्वपूर्ण अंकों की संख्या निर्धारित करता है।

%g के लिए, परिशुद्धता फ़ील्ड चौड़ाई फ़ील्ड को ओवरराइड करती है। हालाँकि, यदि स्वरूपित स्ट्रिंग निर्दिष्ट चौड़ाई से अधिक है, तो यह निर्दिष्ट चौड़ाई से आगे बढ़ जाएगी। .9g:

0.0606060606060606

0.3333333333333333

0.05
  • 0.4
  • 0.1818181818181818
  • 0.0606060606060606: 9 की सटीकता अग्रणी शून्यों को काट देती है, जिसके परिणामस्वरूप 0.0606060606 होता है, जो 10 की चौड़ाई के भीतर फिट बैठता है। &&&]0.05: साथ केवल 2 महत्वपूर्ण अंक, 0.05 को 10 की न्यूनतम चौड़ाई को पूरा करने के लिए रिक्त स्थान के साथ गद्देदार किया गया है।
  • 0.4: 0.05 के समान, 0.4 को भी 10 की न्यूनतम चौड़ाई को पूरा करने के लिए गद्देदार बनाया गया है। 9 की परिशुद्धता से 0.181818182 प्राप्त होता है अनुगामी 2 को पूर्णांकित किया जा रहा है। यह स्ट्रिंग 10 की चौड़ाई के भीतर फिट होती है।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3