एक्सेल यह सब गणित के रूप में डबल सटीक फ़्लोटिंग पॉइंट नंबर है। (कुल 64 बाइनरी बिट्स)
जो आपको दशमलव में महत्वपूर्ण 14 से 15 अंक देता है।
5000 097 208 326 954
16 अंक है। यदि आप एक्सेल में ऐसा करते हैं ...
A1 = 5000097208326954
अ 2 = ए 1
ए 3 = ए 2-ए 1
A3 0 प्रदर्शित करेगा।
पूर्ण प्रकटीकरण: मैं एसीएम का सदस्य हूं और मैं कंप्यूटिंग से जोखिमों के बारे में जनता को बताने के लिए बाध्य हूं। यह हमारे आचार संहिता में है।
कृपया कुछ भी महत्वपूर्ण के लिए एक्सेल का उपयोग न करें।
आपको पॉकेट वैज्ञानिक कैलकुलेटर के साथ अधिक सटीक उत्तर मिलेंगे।
Excel C / C ++ में लिखा गया है और 64 बिट संख्याओं का उपयोग करता है, यह पाप, कॉस और ऍक्स्प जैसे कार्यों की गणना करने के लिए Microsoft फ्लोटिंग पॉइंट लाइब्रेरीज़ का भी उपयोग करता है। ये लाइब्रेरी वैज्ञानिक लोगों की तुलना में बहुत गलत हैं, यहां तक कि समान आकार के नंबरों पर भी काम कर रहे हैं।
फ्लोटिंग पॉइंट साधारण सामान के लिए ठीक है लेकिन वैज्ञानिक काम या गंभीर इंजीनियरिंग के लिए भयानक है वे बहुत गलत हैं। संख्यात्मक तरीके जहां आप जोड़ते हैं और संख्याओं को बार-बार बढ़ाते हैं और फ़्लोटिंग पॉइंट में बदसूरत तेज़ हो जाते हैं क्योंकि परिशुद्धता के 15 अंक चले जाते हैं, प्रत्येक 4 गुणा का एक अंक।
फ़्लोटिंग पॉइंट वित्तीय कार्य के लिए खराब है (बाइनरी फ़्लोटिंग पॉइंट में 0.2 एक अनंत आवर्ती संख्या है।) इसलिए यदि आप 0.2 डॉलर 1000 बार जोड़ते हैं, तो कुछ पैसा गायब हो जाता है। वित्तीय दुनिया में प्रोग्रामर अनंत सटीक संख्याओं का उपयोग करते हैं, जहां उन्हें (जैसे कागज पर नंबर लिखना) होता है और फिर धन गणित करने के लिए विशेष कार्यों का उपयोग करते हैं कि जब सभी राउंडिंग बढ़ जाती है, तो कोई पैसा गायब नहीं होता है।
पुराने स्कूल प्रोग्रामर गणित के लिए फोरट्रान का उपयोग करते थे, जो दशमलव में गणित करता है, जैसे कि आप या मैं। पुस्तकालय फोरट्रान में बहुत सटीक हैं, क्योंकि उपयोगकर्ता संख्यात्मक तरीकों से करने की उम्मीद करते हैं; यह वही है जो इसके लिए है। कैलकुलेटर आंतरिक रूप से भी दशमलव का उपयोग करते हैं।
मैंने पहले C प्रोग्राम्स में मैथ्स राउंडिंग बग्स को पुन: पेश करने के लिए एक्सेल का उपयोग किया है।
आप अपनी गणना के सुंदर रेखांकन प्राप्त कर सकते हैं जो इस तरह से गलत है।