Divmod () अजगर के मानक पुस्तकालय का हिस्सा है जो दो संख्याओं को मापदंडों के रूप में लेता है और भागफल और उनके विभाजन के शेष भाग को एक टपल के रूप में देता है। यह कई गणितीय अनुप्रयोगों में उपयोगी है जैसे संख्याओं की विभाज्यता की जाँच करना और यह स्थापित करना कि कोई संख्या अभाज्य है या नहीं।
सिंटैक्स
Syntax: divmod(a, b) a and b : b divides a a and b are integers or floats
उदाहरण
नीचे दिए गए उदाहरण में पूर्णांक और फ्लोट दोनों के मामले देखें। Divmod() के प्रयोग पर वे हमें एक परिणामी टपल देते हैं जिसमें पूर्णांक और फ्लोट मान भी हो सकते हैं।
# with integers print("5 and 2 give:",divmod(5,2)) print("25 and 5 give:",divmod(25,5)) # with Floats print("5.6 and 2 give:",divmod(5.6,2)) print("11.3 and 9.2 give:",divmod(11.3,9.2))
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
5 and 2 give: (2, 1) 25 and 5 give: (5, 0) 5.6 and 2 give: (2.0, 1.5999999999999996) 11.3 and 9.2 give: (1.0, 2.1000000000000014)
शून्य का उपयोग करना
यदि पहला तर्क शून्य है तो हमें (0,0) मिलता है। और यदि दूसरा तर्क शून्य है तो हमें उम्मीद के मुताबिक शून्य विभाजन त्रुटि मिलती है।
उदाहरण
# With first argument as zero print("0 and 8 give:",divmod(0,8)) # With second argument as zero print("8 and 0 give:",divmod(8,0))
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
0 and 8 give: (0, 0) Traceback (most recent call last): File "xxx.py", line 6, in print("8 and 0 give:",divmod(8,0)) ZeroDivisionError: integer division or modulo by zero
विभाज्यता जांचा जा रहा है
यदि विभाजन के बाद टपल का दूसरा मान 0 है तो हम कहते हैं कि पहली संख्या दूसरी से विभाज्य है। अन्यथा यह विभाज्य नहीं है। नीचे दिया गया उदाहरण इसे दिखाता है।
उदाहरण
m = 12 n = 4 quotient,remainder = divmod(m,n) print(quotient) print(remainder) if (remainder==0): print(m,' is divisible by ',n) else: print(m,' is not divisible by ',n)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
3 0 12 is divisible by 4
जांच रहा है कि नंबर प्राइम है या नहीं
हम डिवमॉड () का उपयोग रिमाइंडर्स का ट्रैक रखने के लिए कर सकते हैं, जब हम 1 से शुरू होने वाली प्रत्येक संख्या से एक संख्या को विभाजित करना शुरू करते हैं। एक अभाज्य संख्या के लिए शून्य शेष की गिनती केवल एक होगी क्योंकि कोई भी संख्या स्वयं के अलावा विभाजित नहीं होगी यह पूरी तरह से। यदि शून्य शेषफल की संख्या 1 से अधिक है तो संख्या अभाज्य नहीं है,।
उदाहरण
num = 11 a = num # counter the number of remainders with value zero count = 0 while a != 0: q, r = divmod(num, a) a -= 1 if r == 0: count += 1 if count > 2: print(num, 'is not Prime') else: print(num, 'is Prime')
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
11 is Prime