Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

यह जांचने के लिए प्रोग्राम कि कोई ऐरे पालिंड्रोम है या C++ में STL का उपयोग नहीं कर रहा है

एन पूर्णांकों की एक सरणी गिरफ्तारी [एन] को देखते हुए, कार्य यह पता लगाना है कि सरणी एक पैलिंड्रोम है या नहीं। हमें बताए गए कार्य को C++ में STL का उपयोग करके करना है।

सी ++ में एसटीएल (स्टैंडर्ड टेम्प्लेट लाइब्रेरी) की एक विशेषता है, यह सी ++ टेम्प्लेट क्लासेस का एक सेट है जो डेटा संरचनाओं और ढेर, कतार, सूचियां इत्यादि जैसे कई कार्यों को प्रदान करने के लिए उपयोग किया जाता है। इनका उपयोग करने के लिए ज्ञान होना चाहिए टेम्पलेट कक्षाओं की।

पैलिंड्रोम एक अनुक्रम है जिसे अनुक्रम के आगे या पीछे से समान रूप से पढ़ा जाता है। पैलिंड्रोम के कुछ सरल उदाहरण हैं - मैडम, रेसकार, आदि। एक सरणी एक पैलिंड्रोम होगी जैसे नीचे दिए गए उदाहरण में -

यह जांचने के लिए प्रोग्राम कि कोई ऐरे पालिंड्रोम है या C++ में STL का उपयोग नहीं कर रहा है

इसलिए, कार्य यह पता लगाना आसान है कि क्या सरणी एक पैलिंड्रोम है या C++ में STL का उपयोग नहीं कर रही है और यदि यह पैलिंड्रोम है तो "इसका एक पैलिंड्रोम" प्रिंट करें और यदि यह पैलिंड्रोम नहीं है तो "यह एक पैलिंड्रोम नहीं है"।

इनपुट

arr[] = {1, 2, 3, 5, 3, 2, 1}

आउटपुट

its a palindrome

इनपुट

arr[] = {1, 2, 3, 4, 5}

आउटपुट

its not a palindrome

समस्या को हल करने के लिए नीचे उपयोग किया गया दृष्टिकोण इस प्रकार है

  • प्रारंभ में डिफ़ॉल्ट रूप से ध्वज =0 सेट करें।

  • सरणी i को 0 से आकार n/2 तक लूप करें

  • प्रत्येक के लिए मैं जाँचता हूँ कि क्या गिरफ्तार [i]! =arr[n-i-1] फिर फ़्लैग सेट करें =1 और ब्रेक करें

  • लूप समाप्त होने के बाद, यदि ध्वज 1 है तो "इसका एक पैलिंड्रोम" प्रिंट करें अन्यथा "यह एक पैलिंड्रोम नहीं है" प्रिंट करें।

एल्गोरिदम

Start 1→ declare function to check if an array is palindrome or not
   void check_palindrome(int arr[], int size)
      declare int flag = 0
      Declare int arr_2[size]
      Call memcpy(arr_2, arr, size * sizeof(int))
      Call reverse(arr, arr + size)
      Loop For int i = 0 and i < size and i++
         IF (arr[i] != arr_2[i])
            Set flag = 1
            Break
         End
         IF (flag == 0)
            Print its a palindrome
         End
         Else
            Print its not a palindrome
         End
Step 2→ In main()
   Declare int arr[] = { 2,3,4,3,2 }
   Declare int size = sizeof(arr) / sizeof(arr[0])
   Call check_palindrome(arr, size)

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void check_palindrome(int arr[], int size){
   int flag = 0;
   int arr_2[size];
   memcpy(arr_2, arr, size * sizeof(int));
   reverse(arr, arr + size);
   for (int i = 0; i < size; i++)
      if (arr[i] != arr_2[i]){
         flag = 1;
         break;
      }
      if (flag == 0)
         cout << "its a palindrome\n";
      else
         cout << "its not a palindrome\n";
}
int main(){
   int arr[] = { 2,3,4,3,2 };
   int size = sizeof(arr) / sizeof(arr[0]);
   check_palindrome(arr, size);
   return 0;
}

आउटपुट

यदि उपरोक्त कोड चलाया जाता है तो यह निम्न आउटपुट उत्पन्न करेगा -

its a palindrome

  1. सी प्रोग्राम यह जांचने के लिए कि कोई सरणी पैलिंड्रोम है या रिकर्सन का उपयोग नहीं कर रही है

    एक सरणी गिरफ्तारी [एन] को देखते हुए जहां एन एक सरणी का कुछ आकार है, कार्य यह पता लगाना है कि सरणी पालिंड्रोम है या रिकर्सन का उपयोग नहीं कर रही है। पैलिंड्रोम एक अनुक्रम है जिसे पीछे और आगे की तरह पढ़ा जा सकता है, जैसे:मैडम, नमन, आदि। तो एक सरणी की जांच करने के लिए पैलिंड्रोम है या नहीं, इसलिए हम ए

  1. सी प्रोग्राम यह जांचने के लिए कि कोई ऐरे पालिंड्रोम है या नहीं

    किसी भी आकार n की arr [] सरणी को देखते हुए, हमारा कार्य यह पता लगाना है कि सरणी पैलिंड्रोम है या नहीं। पैलिंड्रोम एक अनुक्रम है जिसे पीछे और आगे की तरह पढ़ा जा सकता है, जैसे:मैडम, नमन, आदि। तो एक सरणी की जांच करने के लिए पैलिंड्रोम है या नहीं, इसलिए हम एक सरणी को पीछे और आगे से पार कर सकते हैं जैसे

  1. C++ में किसी सरणी की बिटनोसिटी की जांच करने का कार्यक्रम

    एन पूर्णांकों की एक सरणी गिरफ्तारी [एन] को देखते हुए, कार्य यह जांचना है कि दिया गया सरणी बिटोनिक है या नहीं। यदि दी गई सरणी बिटोनिक है तो हां यह एक बिटोनिक सरणी है प्रिंट करें, अन्यथा प्रिंट करें नहीं यह एक बिटोनिक सरणी नहीं है। एक बिटोनिक सरणी तब होती है जब सरणी पहले सख्ती से बढ़ते क्रम में होती