কম্পিউটার টিউটোরিয়াল

C++ নিষিদ্ধ ক্যারেক্টার রিমুভ করার ফাংশন


স্ট্রিং থেকে নিষিদ্ধ ক্যারেক্টারها [ ' : ', ' ? ', ' \ ', ' / ', ' < ', ' > ', ' | ', ' * ' ] রিমুভ করার ফাংশন बनाने का तरीका আলোচনা করব। উদাহরণস্বরূপ:

Input: str = " Hello: Welco*me/ to Tu>torials point|. " Output: " Hello Welcome to Tutorials point. " Explanation: ইনপুট স্ট্রিং-এ নিষিদ্ধ ক্যারেক্টার থাকায় সেগুলো রিমুভ হয়েছে এবং নতুন স্ট্রিং-এ কোনো নিষিদ্ধ ক্যারেক্টার নেই। Input: str = " How/ are y*ou doi,ng? " Output: " How are you doing "

সমাধানের পদ্ধতি

এই সমস্যায় প্রয়োগ করা যায় এমন একটি সহজ পদ্ধতি:

  • স্ট্রিংকে যেকোনো সাইড থেকে ট্রাভার্স করুন।

  • প্রতিটি ক্যারেক্টার চেক করুন যে সেটি নিষিদ্ধ ক্যারেক্টারগুলোতে আছে কিনা।

  • যদি নিষিদ্ধ ক্যারেক্টারগুলোতে থাকে, তবে ক্যারেক্টারটি রিমুভ করুন।

  • ক্যারেক্টার রিমুভ করার সময় আমরা إما একটি নাল (null) ভ্যালু ইনসার্ট করতে পারি বা একটি নতুন স্ট্রিং-এ নিষিদ্ধ ক্যারেক্টার ছাড়া সব ক্যারেক্টার ইনসার্ট করতে পারি।

উদাহরণ

উপরোক্ত পদ্ধতির জন্য C++ কোড

 #include <stdio.h> #include <bits/stdc++.h> using namespace std; // নিষিদ্ধ ক্যারেক্টার রিমুভ করার ফাংশন। void removeforbidden(char* str){     int j = 0;     int n =  strlen(str);     // স্ট্রিং ট্রাভার্স করে নিষিদ্ধ ক্যারেক্টার সার্চ করুন।     for(int i = 0;i<n;i++){         switch(str[i]){             case '/':             case '\\':             case ':':             case '?':             case '"':             case '<':             case '>':             case '|':             case '*':             // নিষিদ্ধ ক্যারেক্টারের জায়গায় নাল ভ্যালু ইনসার্ট করুন।             str[j] = '\0';             default:             str[j++] = str[i];         }     }       // স্ট্রিং প্রিন্ট করুন।     for(int i = 0;i<n;i++)         cout << str[i];     return; } int main(){     char str[] = "Hello: Welco*me/ to Tu>torial?s point|.";     removeforbidden(str);     return 0; } 

আউটপুট

Hello, Welcome to Tutorials point.

উপরোক্ত কোডের ব্যাখ্যা

  • স্ট্রিং ট্রাভার্স করার সময় সুইচ কেস (switch case) ব্যবহার করা হয়েছে যেখানে স্ট্রিংয়ের প্রতিটি এলিমেন্ট কেস ক্যারেক্টারদের সাথে চেক করা হয়।

  • যদি কোনো ক্যারেক্টার কেস ক্যারেক্টারের সমান হয়, তবে সেটিকে নাল ক্যারেক্টারের সাথে রিপ্লেস করা হয়।

উপসংহার

এই টিউটোরিয়ালে, আমরা নিষিদ্ধ ক্যারেক্টার [ ' : ', ' ? ', ' \ ', ' / ', ' < ', ' > ', ' | ', ' * ' ] রিমুভ করার একটি ফাংশন তৈরি করেছি। আমরা একটি সহজ পদ্ধতি আলোচনা করেছি স্ট্রিং ট্রাভার্স করে এবং ক্যারেক্টারগুলো নিষিদ্ধ ক্যারেক্টারদের সাথে ম্যাচ করে। আমরা এই সমস্যার জন্য C++ প্রোগ্রামও আলোচনা করেছি যা আমরা C, Java, Python ইত্যাদি প্রোগ্রামিং ভাষায়ও করতে পারি। আশা করি আপনি এই টিউটোরিয়ালটিকে উপকারী পাবেন।


  1. C++-এ জটিল সংখ্যার জন্য atan() ফাংশন

  2. C++-এ জটিল সংখ্যার জন্য asin() ফাংশন

  3. C++-এ জটিল সংখ্যার জন্য acos() ফাংশন

  4. C++ প্রোগ্রাম: নির্দিষ্ট কেসের জন্য N ক্যারেক্টারের সিকোয়েন্স জেনারেট করা