मान लीजिए कि हमारे पास एक संख्या n है। हमें यह जांचना है कि n वागस्टाफ प्राइम है या नहीं। जैसा कि हम जानते हैं कि वागस्टाफ प्राइम एक अभाज्य संख्या है जो निम्नलिखित रूप में है।
जहाँ q एक विषम अभाज्य संख्या है।
इसलिए, यदि इनपुट n =683 की तरह है, तो आउटपुट True n के रूप में दर्शाया जा सकता है
तो यहाँ q =11. और q विषम अभाज्य है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- यदि अंक अभाज्य है और (संख्या*3 - 1) भी अभाज्य है, तो
- सही लौटें
- झूठी वापसी
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण कोड
def isPrime(num): if num > 1: for i in range(2, num): if num % i == 0: return False return True return False def power_of_two(num): return num and not(num & (num - 1)) def solve(num) : if isPrime(num) and power_of_two(num * 3-1): return True return False n = 683 print(solve(n))
इनपुट
683
आउटपुट
True