जब रिकर्सन तकनीक का उपयोग करके यह पता लगाने की आवश्यकता होती है कि कोई संख्या अभाज्य संख्या है या नहीं, तो एक मेथड परिभाषित किया जाता है, और 'while' कंडीशन का उपयोग किया जाता है।
रिकर्सन बड़ी समस्या के छोटे-छोटे टुकड़ों का आउटपुट कंप्यूट करता है, और इन टुकड़ों को बड़ी समस्या का समाधान देने के लिए जोड़ता है।
उदाहरण
इसके लिए एक प्रदर्शन नीचे दिया गया है:
def check_prime(my_num, my_val=None):
if my_val is None:
my_val = my_num - 1
while my_val >= 2:
if my_num % my_val == 0:
print("The number is not a prime number")
return False
else:
return check_prime(my_num, my_val - 1)
else:
print("The number is a prime number")
return True
my_num = int(input("Enter the number that you wish to examine: "))
print("The number is being checked...")
check_prime(my_num)आउटपुट
Enter the number that you wish to examine: 46 The number is being checked... The number is not a prime number
व्याख्या
- 'check_prime' नामक एक मेथड परिभाषित किया गया है, जो एक संख्या और एक वैल्यू लेता है जिसे पैरामीटर के रूप में None असाइन किया जाता है।
- यदि वेरिएबल None है, तो वेरिएबल को संख्या से 1 घटाकर असाइन किया जाता है।
- यदि वेरिएबल का मान 2 से अधिक है, तो संख्या को वैल्यू से विभाजित किया जाता है, और इसके शेष की तुलना 0 से की जाती है।
- यदि शेष 0 है, तो इसे गैर-अभाज्य संख्या माना जाता है।
- अन्यथा, मेथड को संख्या पास करके, और वैल्यू से 1 घटाकर फिर से कॉल किया जाता है।
- फ़ंक्शन के बाहर, यूज़र से वह संख्या दर्ज करने के लिए कहा जाता है जिसे जांचने की आवश्यकता है।
- फ़ंक्शन को कॉल करके और इस वैल्यू को पैरामीटर के रूप में पास करके संख्या की जांच की जाती है।
- संबंधित आउटपुट कंसोल पर प्रदर्शित किया जाता है।