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

रिकर्सिव प्रोग्राम यह जांचने के लिए कि नंबर पैलिंड्रोम है या नहीं C++

हमें इनपुट के रूप में एक पूर्णांक दिया जाता है। लक्ष्य यह पता लगाना है कि इनपुट नंबर Num एक पैलिंड्रोम है या रिकर्सन का उपयोग नहीं कर रहा है।

यह जांचने के लिए कि कोई संख्या पैलिंड्रोम है या नहीं, उस संख्या को उलट दें और जांचें कि दोनों संख्याएं समान हैं या नहीं। यदि उलटी संख्या मूल संख्या के बराबर है, तो यह पैलिंड्रोम है।

उदाहरण

इनपुट - संख्या =34212;

आउटपुट − 34212 एक पालिंड्रोम नहीं है!

स्पष्टीकरण - अगर हम 34212 को उलट दें तो हमें 21243 मिलता है। 34212 !=21243 इसलिए इनपुट नंबर पैलिंड्रोम नहीं है।

इनपुट - संख्या =32123;

आउटपुट − 32123 पालिंड्रोम है!

स्पष्टीकरण - अगर हम 32123 को उल्टा करते हैं तो हमें 32132 मिलता है। 32123!=32123 इसलिए इनपुट नंबर पैलिंड्रोम है।

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

इस दृष्टिकोण में हम पुनरावर्ती फ़ंक्शन का उपयोग कर रहे हैं revrsNum(int num1, int num2) जो इनपुट नंबर num1 और अस्थायी संख्या num2 लेता है।

आधार मामलों के लिए-:यदि num1 0 है, तो num2 लौटाएं।

Else-:रिकर्सन का उपयोग करके num1 के विपरीत गणना करें। वापसी की गणना उलटी की जाती है।

यदि दोनों समान हैं, तो इनपुट नंबर पैलिंड्रोम है।

  • इनपुट नंबर संख्या लें।

  • Num2 लें =revrsNum(Num,0)

  • फंक्शन revrsNum(int num1, int num2), num1 के विपरीत पुनरावर्ती रूप से उत्पन्न करता है और उलटा नंबर देता है।

  • यदि num1 0 है तो num2 को परिकलित रिवर्स के रूप में वापस करें।

  • अन्य num2 को 10 से गुणा करें और इसमें num1%10 जोड़ें।

  • num1=num1/10 का उपयोग करके num1 को 10 से कम करें।

  • revrsNum(num1, num2) का उपयोग करके पुनरावर्ती करें;

  • वापसी परिणाम।

  • मुख्य के अंदर प्राप्त प्रिंट परिणाम।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
int revrsNum(int num1, int num2){
   if (num1 == 0){
      return num2;
   }
   num2 *= 10;
   num2 += (num1 % 10);
   num1 = num1/10;
   return revrsNum(num1, num2);
}
int main(){
   int Num = 1345431;
   int Num2 = revrsNum(Num,0);
   if (Num == Num2){
      cout <<Num<<" is Palindrome!";
   }
   else{
      cout <<Num<<" is not a Palindrome!";
   }
   return 0;
}

आउटपुट

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

1345431 is Palindrome!

  1. C++ प्रोग्राम में डबल बेस पैलिंड्रोम

    इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो यह जांचता है कि दी गई संख्या दो नंबर सिस्टम में पैलिंड्रोम है या नहीं। हमने दूसरी संख्या प्रणाली के लिए एक संख्या और एक आधार दिया है। हमें यह जांचना है कि दी गई संख्या दशमलव संख्या प्रणाली और दी गई संख्या प्रणाली में पैलिंड्रोम है या नहीं। आइए

  1. यह जांचने के लिए प्रश्न कि क्या सबस्ट्रिंग [एल… आर] सी ++ प्रोग्राम में पैलिंड्रोम है या नहीं

    इस समस्या में, हमें स्ट्रिंग str, Q प्रश्नों की संख्या दी गई है, जिनमें से प्रत्येक में दो मान L और R हैं, सबस्ट्रिंग [L...R] के लिए। हमारा काम यह जांचने के लिए क्वेरीज़ को हल करने के लिए एक प्रोग्राम बनाना है कि सबस्ट्रिंग [L…R] पैलिंड्रोम है या नहीं। समस्या का विवरण - प्रत्येक प्रश्न को हल करने क

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

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