मान लीजिए कि हमारे पास एक संख्या n और दूसरी संख्या k है, हमें यह जांचना है कि विषम स्थानों पर n के अंकों का योग (दाईं ओर से बाईं ओर) k से विभाज्य है या नहीं।
इसलिए, यदि इनपुट n =2416 k =5 जैसा है, तो आउटपुट सही होगा क्योंकि दाईं से बाईं ओर विषम संख्याओं का योग 4 + 6 =10 है। जो 5 से विभाज्य है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- कुल:=0, स्थिति:=1
- जबकि n> 0 , करते हैं
- यदि स्थिति विषम है, तो
- कुल:=कुल + (एन मॉड 10)
- n :=(n / 10) का भागफल
- स्थिति:=स्थिति + 1
- यदि स्थिति विषम है, तो
- यदि योग k से विभाज्य है, तो
- सही लौटें
- झूठी वापसी
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण कोड
def solve(n, k): total = 0 pos = 1 while n > 0: if pos % 2 == 1: total += n % 10 n = n // 10 pos += 1 if total % k == 0: return True return False n = 2416 k = 5 print(solve(n, k))
इनपुट
2416, 5
आउटपुट
True