কম্পিউটার

C++ এ একই প্রতিবেশীদের সাথে অক্ষর গণনা করুন


আমাদেরকে একটি স্ট্রিং দেওয়া হয়েছে, ধরা যাক, str এবং কাজটি হল একটি স্ট্রিং স্ট্র-এ অক্ষর গণনা করা যার একই প্রতিবেশী রয়েছে এবং এতে একটি স্ট্রিং-এর একটি অক্ষরের বাম এবং ডান দিক উভয়ই অন্তর্ভুক্ত থাকবে। এছাড়াও, এই দৃশ্যে একটি স্ট্রিংয়ের প্রথম এবং শেষ অক্ষরটিকে সর্বদা বিবেচনা করা হবে কারণ তাদের শুধুমাত্র একটি সংলগ্ন অক্ষর রয়েছে৷

উদাহরণস্বরূপ

Input − string str = “poiot”
Output − count is 3

ব্যাখ্যা − প্রদত্ত স্ট্রিং অক্ষরগুলিতে p, t এবং i একই প্রতিবেশী রয়েছে তাই গণনা 3-তে বাড়ানো হবে।

Input − string str = “nitihig”
Output − count is 4

ব্যাখ্যা − প্রদত্ত স্ট্রিং অক্ষরগুলিতে n, t, h এবং g একই প্রতিবেশী রয়েছে তাই গণনা 4-এ বৃদ্ধি করা হবে।

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • একটি ভেরিয়েবলে স্ট্রিং ইনপুট করুন, আসুন str

    বলি
  • length() ফাংশন ব্যবহার করে স্ট্রিং স্ট্র এর দৈর্ঘ্য গণনা করুন যা স্পেস সহ স্ট্রিং এর অক্ষর সংখ্যা অনুযায়ী একটি পূর্ণসংখ্যার মান প্রদান করবে।

  • যদি স্ট্রিংয়ের দৈর্ঘ্য 2 এর থেকে কম বা সমান হয় তবে স্ট্রিংটির দৈর্ঘ্য হিসাবে গণনাটি ফেরত দিন কারণ সেগুলি সমস্ত গণনা করা হবে।

  • যদি স্ট্রিংয়ের দৈর্ঘ্য 2-এর বেশি হয়, তাহলে গণনাটি 2 দিয়ে শুরু করুন।

  • এখন, i থেকে 1 দিয়ে লুপটি শুরু করুন যতক্ষণ না i (দৈর্ঘ্য-1) এর থেকে কম হয়

  • লুপের ভিতরে, পরীক্ষা করে দেখুন (str[i-1] =str[i+1]) তারপর কাউন্ট বাড়ান 1

  • এখন গণনার মোট মান ফেরত দিন

  • ফলাফল প্রিন্ট করুন।

উদাহরণ

#include <iostream>
using namespace std;
// To count the characters
int countChar(string st){
   int size = st.length();
   if (size <= 2){
      return size;
   }
   int result = 2;
   // Traverse the string
   for (int i = 1; i < size - 1; i++){
      // Increment the count by 1 if the previous
      // and next character is same
      if (st[i - 1] == st[i + 1]){
         result++;
      }
   }
   // Return result
   return result;
}
int main(){
   string st = "poiot";
   cout <<"count is " <<countChar(st);
   return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে

count is 3

  1. C++-এ অনন্য অক্ষর সহ একটি সংযুক্ত স্ট্রিং-এর সর্বাধিক দৈর্ঘ্য

  2. C++ এ কমপক্ষে K পুনরাবৃত্তিকারী অক্ষর সহ দীর্ঘতম সাবস্ট্রিং

  3. C++-এ অক্ষরের পুনরাবৃত্তি সহ সমস্ত স্থানান্তর প্রিন্ট করুন

  4. C++ এ getline (স্ট্রিং)