क्या यह एक्सेल व्यवहार एक बड़ी हेक्स संख्या के साथ अपेक्षित है?


3

अस्पष्ट प्रश्न शीर्षक के लिए क्षमा करें, लेकिन मुझे यकीन नहीं है कि यह कैसे सबसे अच्छा है।

जब मैं एक्सेल सेल में निम्नलिखित संख्या पेस्ट करता हूं:

5000097208326954

यह दिखाता है

5E+15

कोई बात नहीं। मै समझ गया। हालांकि, जब मैं फ़ंक्शन बार में देखता हूं, तो यह दिखाई देता है

5000097208326950

कि मुझे समझ नहीं आ रहा है । व्यवहार किसी भी पूर्व स्वरूपण से स्वतंत्र प्रतीत होता है जिसे मैं कक्ष में रख सकता हूं।

यह Excel 2003 SP3 पर है।

क्या मुझे कुछ सूक्ष्म अपेक्षित व्यवहार याद आ रहे हैं, या यह एक बग है?


प्रश्न में कहीं भी हेक्साडेसिमल नहीं है, केवल दशमलव (यद्यपि वैज्ञानिक गैर-निर्धारण)। कृपया प्रश्न और टैग दोनों को संपादित करें।
सुमा

1
5000097208326954 है दशमलव मान 5.764.617.908.402.678.100 साथ एक हेक्साडेसिमल संख्या ... फिर भी, मैं स्वीकार करता हूँ कि मूल्य का हेक्साडेसिमल प्रकृति शायद अप्रासंगिक है
Dancrumb

जवाबों:


6

कोई व्यक्ति संभवतः एक बेहतर स्पष्टीकरण और एक फिक्स के साथ आएगा, लेकिन मूल रूप से कंप्यूटर केवल एक विशेष मात्रा में महत्वपूर्ण अंकों को संग्रहीत करते हैं जब फ्लोटिंग पॉइंट नंबर और / या बड़े पूर्णांक का प्रतिनिधित्व करते हैं। एक्सेल (कम से कम डिफ़ॉल्ट रूप से), आपको केवल संख्या का पहला ~ 15 अंक देता है और फिर बाकी को छोड़ देता है। आप सत्यापित कर सकते हैं कि अपनी संख्या के अंत में अतिरिक्त अंक जोड़कर, f.ex. 5000097208326954123, और उन अंकों को 5000097208326950000 पर गोल किया जाएगा।

एक विचार के रूप में, आपके पास संभवतः हेक्साडेसिमल अंक प्रणाली है जो वैज्ञानिक संकेतन के साथ भ्रमित है


धन्यवाद ... मैं वैज्ञानिक संकेतन के साथ भ्रमित नहीं हूं ... मैंने जो संख्या चुनी है वह निश्चित रूप से एक हेक्स संख्या है, यह सिर्फ एक्सेल मानती है कि यह दशमलव है। चूँकि मैं इस पर कोई गणितीय कार्य नहीं कर रहा हूँ, मैं एक्सेल को केवल इसे पाठ के रूप में मानने के लिए कहूँगा और इसके साथ किया जाऊंगा। हालाँकि वह अंतिम अंक मेरे दिमाग को थोड़ा परेशान कर रहा था, इसलिए इसे साफ़ करने के लिए धन्यवाद!
Dancrumb

+1 यदि आप संख्या को फ़ील्ड में बदलते हैं, तो यह 5000097208326950 तक पहुंच जाएगा, जिसमें से 4 को छोड़ना होगा, अभी तक की उच्चतम संख्या 9.99999999999999 + 307 office.microsoft.com/en-us/excel-help/…
N4TKD

3

एक्सेल यह सब गणित के रूप में डबल सटीक फ़्लोटिंग पॉइंट नंबर है। (कुल 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 प्रोग्राम्स में मैथ्स राउंडिंग बग्स को पुन: पेश करने के लिए एक्सेल का उपयोग किया है।

आप अपनी गणना के सुंदर रेखांकन प्राप्त कर सकते हैं जो इस तरह से गलत है।


थोड़ा-सा विषय छोड़ें, क्या आप कृपया अपने "कृपया किसी भी गंभीर चीज़ के लिए एक्सेल का उपयोग न करें" को शांत कर सकते हैं। टिप्पणी। संख्यात्मक गणना स्वाभाविक रूप से परिमित सटीक संख्या के साथ काम करती है और गोल-गोल त्रुटियों के प्रसार के लिए संदिग्ध होती है, लेकिन एक्सेल अन्य तरीकों की तुलना में किसी भी बदतर है, एफएक्स। अपनी प्रोग्रामिंग भाषा में फ्लोटिंग पॉइंट नंबरों के साथ काम करना?
GummiV

Bignums (अनंत परिशुद्धता) या BCD वाली भाषाओं में आपको एक्सेल की तुलना में बहुत बेहतर परिणाम मिलेंगे। स्मालटाक, फोरट्रान, पेरल, जावा आदि सभी ऐसा कर सकते हैं। जावा एमएस मैथ्स लाइब्रेरीज़ का उपयोग नहीं करता है, और जो इसे उपयोग करता है, वे उनके द्वारा दिए गए उत्तरों में फोरट्रान के करीब हैं। सीपीयू हार्डवेयर गणित कभी-कभी बहुत अच्छा होता है, लेकिन इंटेल आपको सीपीयू इरेटा को देखने के लिए एक गैर-प्रकटीकरण समझौते पर हस्ताक्षर करता है, इसलिए यदि वे बुरी तरह से काम करते हैं, तो भी मैं नहीं कह सकता। आप कुछ गणित करने के लिए MAPLE का उपयोग कर सकते हैं; यह बहुत अच्छा जवाब देगा। मूल रूप से, गणित एक ऐसी चीज है जिसे ज्यादातर लोग काम मान लेते हैं, लेकिन कंप्यूटर आसानी से गलत हो सकता है।
टिम विस्क्राफ्ट

2

आप पूछ रहे हैं कि अंतिम अंक 4 के बजाय 0 के रूप में क्यों दिखाता है, हाँ?

मेरा मानना ​​है कि यह लिंक उत्तर देता है। यदि आप गणना विशिष्टताओं के तहत देखते हैं तो अधिकतम संख्या सटीकता 15 अंकों की है। अन्य विशिष्टताओं को देखते हुए ऐसा लगता है कि एक्सेल शायद आपके द्वारा दर्ज किए गए नंबर का पूरा मूल्य रखता है, इसलिए यदि आप किसी सूत्र में संख्या का उपयोग करते हैं, तो उसे अभी भी सही गणना करना चाहिए।

सच कहूं, तो पूरे महत्वपूर्ण अंक ने कॉलेज में मेरी समझ को बढ़ा दिया है, इसलिए मैं आपको यह नहीं बता सकता कि एक्सेल को इस तरह से क्यों स्थापित किया गया था।

यह फ़ोरम आपको आवश्यक होने पर अंतर्निहित सीमाओं को पार करने के लिए संकेत दे सकता है।

इसके अलावा, आप डीईसी के बजाय एचईएक्स में होने वाले मूल्य को पहचानने के लिए कैसे उत्कृष्टता का प्रारूप तैयार करते हैं?


1
क्षमा करें मैं असहमत हूं। मैं विश्वास करता हूं कि एक्सेल किसी भी तरह से उन नंबरों को "होल्ड" नहीं करता जो गोल हैं और गणना के लिए / या उनका उपयोग करते हैं। जब एक्सेल नंबर स्टोर करता है, तो गैर-महत्वपूर्ण-भाग डेटा खारिज कर दिया जाता है। पाठकों को गलत जानकारी देने से बचने के लिए कृपया अपने उत्तर को संपादित करने पर विचार करें।
GummiV

2

जैसा कि पहले ही बताया गया है, यह एक्सेल स्टोर करते समय 15 महत्वपूर्ण अंकों की सीमा है। यदि यह एक ऐसा नंबर नहीं है, जिसे आपको इसके मूल्य के अनुसार किसी भी चीज़ की गणना करने के लिए उपयोग करना है, बल्कि एक सीरियल नंबर या उत्पाद कोड की तरह एक संदर्भ है, तो आपका सबसे अच्छा विकल्प सेल को टेक्स्ट के रूप में प्रारूपित करना होगा (सामान्य के बजाय) ) इसमें चिपकाने से पहले, इसलिए यह सभी अंकों को रखेगा। यह इसे चतुर बनाने की कोशिश को भी रोक देगा और इसे वैज्ञानिक संकेतन में 'सहायक' होने के लिए दिखाएगा।

बेशक, अगर यह वास्तव में एक हेक्स संख्या है (लेकिन आप 9 से अधिक अंकों के बिना एक परीक्षा देने के लिए हुए थे) तो आप निश्चित रूप से एक्सेल को एक नंबर के रूप में व्यवहार नहीं करना चाहते हैं। a) क्योंकि यह मान लेगा कि यह दशमलव है, और जब इसमें अक्षर होंगे तब यह विफल हो जाएगा। बी) इसका मतलब यह होगा कि संख्या परिमाण में और भी बड़ी है, और यदि आप इसे दशमलव में परिवर्तित करते हैं तो आप 15 अंकों से अधिक होंगे।


0

सेल या सभी सेल पर राइट क्लिक करें> फॉर्मेट सेल> इनमें से कोई एक फॉर्मेट चुनें:

  • संख्या (या इसके प्रकार): संख्यात्मक मान के रूप में पहचान करने के लिए
  • पाठ: सबसे अच्छा विकल्प, क्योंकि यदि आप बाईं ओर 0 का उपयोग कर सकते हैं, तो वे दिखाई देंगे

खैर, मैं उस समाधान को यहां नहीं देख सका - केवल वैज्ञानिक संकेतन के बारे में कुछ चर्चा या आपके हेक्स संख्या के बारे में संभावित त्रुटि।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.