स्पेंसर, वहाँ mods (जिस तरह से यह गणित में परिभाषित किया है, प्रोग्रामिंग नहीं) के बारे में सोचने के लिए एक सरल तरीका है। यह वास्तव में नहीं बल्कि सीधा है:
सभी पूर्णांकों लें:
...- 9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 9 ...
अब चलो 3 के गुणकों के बारे में सोचें (यदि आप mod 3 पर विचार कर रहे हैं)। आइए 0 से शुरू करें और 3:
...- 9, -8, -7, -2, -1, , 1 के सकारात्मक गुणक , 2, 3 , 4, 5, 6 , 7, 8, 9 ...
इन सभी नंबरों को जब 3 से विभाजित शून्य शेष है, यानी इन सभी जो शून्य करने के लिए mod।
अब चलिए इस पूरे समूह को एक-एक करके बदल दें।
...- 9, -8, -7, -6, -5, -4, -3, -2, -1, 0, , 2, 3, 4 , 5, 6, 7 , 8, 9 ...
इन सभी नंबरों को जब 3 से विभाजित 1 के एक शेष है, कर रहे हैं यानी इन सभी लोगों को है कि करने के लिए 1.
आइए अब बदलाव आधुनिक हैं इस पूरे समूह को एक बार फिर से।
...- 9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2 , 3, 4, 5 , 6, 7, 8 , 9 ...
इन सभी नंबरों को जब 3 से विभाजित 2 के एक शेष है, कर रहे हैं यानी इन सभी लोगों को है कि करने के लिए 2.
आप करेंगे आधुनिक हैं ध्यान दें कि इन मामलों में से प्रत्येक में, चयनित संख्या 3 से बाहर हो जाती है। हम हमेशा हर तीसरे नंबर लेते हैं क्योंकि हम मॉड्यूल 3 पर विचार कर रहे हैं। (यदि हम मॉड 5 कर रहे थे, तो हम हर पांचवें नंबर लेते थे)।
तो, आप इस पैटर्न को नकारात्मक संख्याओं में पीछे ले जा सकते हैं। बस 3 की दूरी रखें।आप इन तीन अनुरूपता वर्गों मिल जाएगा (तुल्यता कक्षाओं, के रूप में वे गणित में कहा जाता है की एक विशेष प्रकार):
... -9, -8, -7, -6, -5, -4, -3, -2, -1, , 1, 2, 3 , 4, 5, 6 , 7, 8, 9 ...
...- 9, -8, -7, -6, -5, -4, -3, -2, -1, 0, , 2, 3, 4 , 5, 6, 7 , 8, 9 ...
...- 9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, , 3, 4, , 6, 7, , 9 ...
इन समकक्ष संख्याओं का मानक गणितीय प्रतिनिधित्व कक्षा के अवशेष का उपयोग करना है, जिसका अर्थ केवल सबसे छोटा गैर-ऋणात्मक संख्या लेना है।
तो आम तौर पर, जब मैं mods के बारे में सोच रहा हूँ और मैं एक नकारात्मक संख्या के साथ काम कर रहा हूँ, मैं सिर्फ क्रमिक सापेक्ष संख्या फिर से और फिर जोड़ने की जब तक मैं पहले 0 या सकारात्मक नंबर मिल लगता है:
यदि हम मॉड 3 कर रहे हैं, तो -1 के साथ, बस 3 बार जोड़ें: -1 + 3 = 2. -4 के साथ, 3 बार दो बार जोड़ें क्योंकि एक बार पर्याप्त नहीं है। अगर हम एक बार +3 जोड़ते हैं, तो हमें -4 + 3 = -1 मिलता है, जो अभी भी नकारात्मक है। तो हम फिर से +3 जोड़ देंगे: -1 + 3 = 2.
चलो एक बड़ी नकारात्मक संख्या, जैसे -23 की कोशिश करें। यदि आप +3 जोड़ते रहते हैं, तो आप पाएंगे:
-23, -20, -17, -14, -11, -8, -5, -2, 1. हमें सकारात्मक संख्या मिली, इसलिए हम रूक जा। अवशेष 1 है, और यह वह रूप है जो गणितज्ञ आमतौर पर उपयोग करते हैं।
उत्सुक अगर इनमें से कोई भी उत्तर पुनः मॉड्यूल था जो आप – kris
के लिए देख रहे थे तो आप Frem (ए, बी) का उपयोग करें - जिस मॉड्यूल की आप उम्मीद कर रहे हैं (जिसे मानक गणित में उपयोग किया जाता है) को कोडिंग में "शेष" कहा जाता है । सी में fmod() और frem() है, आप mod (उर्फ "%") का उपयोग कर रहे हैं, आपको rem का उपयोग करने की आवश्यकता है। गणित में मॉडुलो === कोड में शेष (रिम)। गूंगा, मुझे पता है। –
यह मेरे ध्यान में लाया गया है कि एफआरएम (ए, बी) केवल जीएनयू सी में था और ओब्जे-सी में नहीं ले जाया गया था। समकक्ष यह होगा: 'ए-बी * मंजिल ((फ्लोट) ए/(फ्लोट) बी)' –