मान लीजिए हमारे पास एक संख्या n है, हमें इसके भाजक की कुल संख्या सम या विषम है।
इसलिए, यदि इनपुट n =75 जैसा है, तो आउटपुट सम होगा, क्योंकि भाजक [1, 3, 5, 15, 25, 75] हैं।
इसे हल करने के लिए हम एक सरल और कुशल दृष्टिकोण का पालन करेंगे। हमने देखा है कि जब कोई संख्या पूर्ण वर्ग होती है तो उसके पास विषम संख्या में भाजक होते हैं। अतः यदि संख्या पूर्ण वर्ग नहीं है तो उसके भी भाजक होंगे। इसलिए यहां हम केवल जांच करेंगे कि संख्या पूर्ण वर्ग है या नहीं और इसके आधार पर हम आउटपुट के रूप में "विषम" या "सम" लौटा सकते हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- यदि n <1 शून्येतर है, तो
- वापसी
- वर्ग :=n का वर्गमूल
- यदि sqrt*sqrt n के समान है, तो
- वापसी 'विषम'
- अन्यथा,
- 'सम' लौटाएं
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
def solve(n): if n < 1: return sqrt = n**0.5 if sqrt*sqrt == n: return 'Odd' else: return 'Even' n = 75 print(solve(n))
इनपुट
75
आउटपुट
Even