जब यह जांचने की आवश्यकता होती है कि कोई स्ट्रिंग सममित है या यह एक पैलिंड्रोम है, तो एक विधि परिभाषित की जा सकती है, जो 'जबकि' स्थिति का उपयोग करती है। समरूपता की जांच करने के लिए एक और विधि परिभाषित की गई है जो 'जबकि' और 'अगर' स्थितियों का भी उपयोग करती है।
पैलिंड्रोम एक संख्या या स्ट्रिंग है, जिसे बाएं से दाएं या दाएं से बाएं पढ़ने पर समान मान होता है। अनुक्रमणिका मान समान हैं।
उदाहरण
नीचे उसी के लिए एक प्रदर्शन है -
def check_palindrome(my_str): mid_val = (len(my_str)-1)//2 start = 0 end = len(my_str)-1 flag = 0 while(start<mid_val): if (my_str[start]== my_str[end]): start += 1 end -= 1 else: flag = 1 break; if flag == 0: print("The entered string is palindrome") else: print("The entered string is not palindrome") def check_symmetry(my_str): n = len(my_str) flag = 0 if n%2: mid_val = n//2 +1 else: mid_val = n//2 start_1 = 0 start_2 = mid_val while(start_1 < mid_val and start_2 < n): if (my_str[start_1]== my_str[start_2]): start_1 = start_1 + 1 start_2 = start_2 + 1 else: flag = 1 break if flag == 0: print("The entered string is symmetrical") else: print("The entered string is not symmetrical") my_string = 'phphhphp' print("The method to check a palindrome is being called...") check_palindrome(my_string) print("The method to check symmetry is being called...") check_symmetry(my_string)
आउटपुट
The method to check a palindrome is being called... The entered string is palindrome The method to check symmetry is being called... The entered string is not symmetrical
स्पष्टीकरण
- 'check_palindrome' नाम की एक विधि परिभाषित की गई है, जो एक स्ट्रिंग को एक पैरामीटर के रूप में लेती है।
- मध्य मान की गणना 2 के साथ फर्श विभाजन करके की जाती है।
- प्रारंभ मान 0 को सौंपा गया है, और अंतिम मान अंतिम तत्व को सौंपा गया है।
- ध्वज नाम का एक चर 0 को सौंपा गया है।
- थोड़ी देर की स्थिति शुरू होती है, और यदि प्रारंभ और अंत तत्व समान हैं, तो प्रारंभ मान बढ़ा दिया जाता है, और अंतिम मान घटा दिया जाता है।
- अन्यथा, ध्वज चर 1 को सौंपा गया है, और यह लूप से बाहर हो जाता है।
- यदि ध्वज का मान 0 है, तो स्ट्रिंग एक पैलिंड्रोम होगी, अन्यथा नहीं।
- 'check_symmetry' नाम की एक अन्य विधि परिभाषित की गई है, जो एक स्ट्रिंग को एक पैरामीटर के रूप में लेती है।
- स्ट्रिंग की लंबाई एक वेरिएबल को असाइन की जाती है।
- यदि शेष लंबाई और 2 0 नहीं है, तो मध्य मान बदल जाता है।
- प्रारंभ और मध्य मान फिर से बदल दिए गए हैं।
- एक और 'जबकि' शर्त का उपयोग किया जाता है, और प्रारंभ मान फिर से बदल दिए जाते हैं।
- यदि ध्वज का मान 0 है, तो स्ट्रिंग को सममित माना जाता है।
- अन्यथा नहीं।