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

सी++ में एक स्ट्रिंग में सभी अजीब शब्दों को प्रिंट करें


इस समस्या में हमें एक वाक्य दिया जाता है। हमारा काम वाक्य से सभी स्ट्रिंग्स को प्रिंट करना है जो कि मजेदार शब्द हैं।

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

|string[0] - string[1]| = |revstring[0]-revstring[1]|

आइए समस्या को समझने के लिए एक उदाहरण लेते हैं -

Input: string = ‘ABRS’
Output: Yes
Explanation:
Reverse string = SRBA
|A-B| = 1 = |S-R|
|B-R| = 16 = |R-B|
|B-A| = 1 = |R-S|

इस समस्या को हल करने के लिए, हमें दिए गए वाक्य से प्रत्येक स्ट्रिंग को निकालना होगा। और अगर स्ट्रिंग एक अजीब स्ट्रिंग है तो प्रिंट करें।

मजेदार स्ट्रिंग की जांच करें - इसके लिए हम स्ट्रिंग को दोनों सिरों से यानि शुरुआत से और अंत से पार करेंगे। और स्ट्रिंग के आसन्न वर्णों के बीच पूर्ण अंतर की तुलना करें और यदि अंतर समान नहीं है तो झूठी वापसी करें।

नीचे दिया गया कोड हमारे तर्क को लागू करेगा -

उदाहरण

#include <iostream>
#include<string.h>
using namespace std;
bool isFunny(string word){
   int i = 1;
   int j = word.length() - 2;
   for (int i = 0; i < word.length(); i++)
      word[i] = tolower(word[i]);
   while (i <= j){
      if (abs(word[i] -
         word[i - 1]) != abs(word[j] -
      word[j + 1]))
      return false;
      i++;
      j--;
   }
   return true;
}
void printFunnyWords(string str){
   str +=" ";
   string word = "";
   for (int i = 0; i < str.length(); i++){
      char ch = str[i];
      if (ch!=' ')
         word += ch;
      else{
         if (isFunny(word))
            cout<<word<<"\t";
         word = "";
      }
   }
}
int main(){
   string sentence = "hello, i love malayalam langauge";
   cout<<"All funny words of the string '"<<sentence<<"' are :\n";
   printFunnyWords(sentence);
   return 0;
}

आउटपुट

All funny words of the string 'hello, i love malayalam langauge' are :
i malayalam

  1. C++ में एक स्ट्रिंग को ब्रैकेट रूप में तोड़ने के सभी तरीकों को प्रिंट करें

    इस समस्या में, हमें एक स्ट्रिंग दी जाती है और हमें इसे सबस्ट्रिंग में तोड़ना होता है और उन्हें संलग्न कोष्ठक में प्रिंट करना होता है। आइए समस्या को बेहतर ढंग से समझने के लिए कुछ उदाहरण लें, Input : wxyz Output :    (w) (x) (y) (z)    (w) (x) (yz)    (w) (xy) (z)  

  1. C++ में CamelCase नोटेशन डिक्शनरी में एक पैटर्न से मेल खाने वाले सभी शब्दों को प्रिंट करें

    इस समस्या में, हमें ऊंट के मामले में स्ट्रिंग की एक सरणी और एक पैटर्न दिया गया है। हमें सरणी के उन सभी स्ट्रिंग को प्रिंट करना है जो दिए गए पैटर्न से मेल खाते हैं। स्ट्रिंग की सरणी एक सरणी है जिसमें तत्व स्ट्रिंग डेटा प्रकार के होते हैं। कैमलकेस प्रोग्रामिंग में नामकरण का एक सामान्य तरीका है, इस त

  1. किसी दिए गए स्ट्रिंग के सभी सबस्ट्रिंग को C++ में प्रिंट करने का प्रोग्राम

    इस ट्यूटोरियल में, हम किसी दिए गए स्ट्रिंग के सभी सबस्ट्रिंग को प्रिंट करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें एक स्ट्रिंग या वर्णों की एक सरणी दी जाएगी। हमारा काम उस विशेष स्ट्रिंग के सभी सबस्ट्रिंग को प्रिंट करना है। उदाहरण #include<bits/stdc++.h> using namespace std; //prin