क्रिप्टोग्राफी जैसे कई अनुप्रयोगों में प्राइम नंबर एक केंद्रीय भूमिका निभाते हैं। इसलिए विभिन्न अनुप्रयोगों में पायथन कार्यक्रमों का उपयोग करके अभाज्य संख्याओं की जांच करना आवश्यक है। एक अभाज्य संख्या एक ऐसी संख्या है जिसका एक और स्वयं के अलावा कोई अन्य गुणनखंड नहीं होता है। नीचे ऐसे प्रोग्राम दिखाई देंगे जो यह पता लगा सकते हैं कि दी गई संख्या अभाज्य है या नहीं।
दृष्टिकोण
कोई संख्या अभाज्य है या नहीं, यह तय करने के लिए हम निम्नलिखित दृष्टिकोण अपनाते हैं।
-
शुरुआत में चेक पॉजिटिव है या नहीं। चूँकि केवल धनात्मक संख्याएँ ही अभाज्य संख्याएँ हो सकती हैं।
-
हम संख्या को 2 की श्रेणी में सभी संख्याओं से विभाजित करके दी गई संख्या से एक संख्या कम कर देते हैं।
-
यदि इस श्रेणी में किसी संख्या के लिए शेषफल शून्य हो जाता है तो वह अभाज्य संख्या नहीं होती है।
उदाहरण
x = 23 if x > 1: for n in range(2, x): if (x % n) == 0: print(x, "is not prime") print(n, "times", x // n, "is", x) break else: print(x, "is a prime number") else: print(x, "is not prime number")
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
23 is a prime number
फ़ॉर्म 6i+1 की जांच की जा रही है
सभी अभाज्य संख्याएँ जो 6 से बड़ी हैं, उन्हें 6i+1 के रूप में दर्शाया जा सकता है। यहां मैं 1 से शुरू होता हूं और पूर्णांक के रूप में आगे बढ़ता हूं। नीचे दिए गए उदाहरण में हम जांच करेंगे कि क्या संख्या को 6i+1 के रूप में प्रस्तुत किया जा सकता है, इसके 6 को विभाजित करके और एक के रूप में अनुस्मारक की जांच करके। तदनुसार, यह तय करेगा कि संख्या अभाज्य है या नहीं। साथ ही हमें i मान की जांच करने की आवश्यकता है जो दी गई संख्या के वर्गमूल के बराबर है।
उदाहरण
def CheckPrime(n):
# Check for cases of 2 and 3
if (n <= 1):
return False
if (n <= 3):
return True
# skip checking middle five numbers in the loop
if (n % 2 == 0 or n % 3 == 0):
return False
i = 5
while (i * i <= n):
if (n % i == 0 or n % (i + 2) == 0):
return False
i = i + 6
return True
# Check for inputs
if (CheckPrime(31)):
print(" true")
else:
print(" false")
if (CheckPrime(25)):
print(" true")
else:
print(" false") आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
true false