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

দেওয়া ইনপুট থেকে ব্র্যাকেট রিমুভ করার সি প্রোগ্রাম


সমস্যা

এক্সপ্রেশন থেকে ব্র্যাকেট রিমুভ করে একটি সিম্প্লিফাইড এক্সপ্রেশন তৈরি করা।

সমাধান

উদাহরণ ১

Input: A string expression with bracket is as follows: (x+y)+(z+q) The output is as follows: x+y+z+q

উদাহরণ ২

The input is as follows: (x-y+z)-p+q The output is as follows: x-y+z-p+q

অ্যালগরিদম

দেওয়া ইনপুট থেকে ব্র্যাকেট রিমুভ করার অ্যালগরিদম:

Step 1: রানটাইমে ইনপুট ডিক্লেয়ার ও পড়ুন।

Step 2: স্ট্রিং ট্রাভার্স করুন।

Step 3: ইনপুট স্ট্রিংর প্রতিটি এলিমেন্ট নতুন স্ট্রিংয়ে কপি করুন।

Step 4: যদি কোনো প্যারেনথেসিস এলিমেন্ট হিসেবে পাওয়া যায়, তবে সেটি খালি স্পেস দিয়ে রিপ্লেস করুন।

উদাহরণ

দেওয়া ইনপুট থেকে ব্র্যাকেট রিমুভ করার সি প্রোগ্রাম:

#include<stdio.h> int main(){     int i=0,c=0,j=0;     char a[100],b[100];     printf("\nEnter the string :");     scanf("%s",a);     while(a[i]!='\0'){         if((a[i]=='(') && (a[i-1]=='-')){             (c=0)?j=i:j=c;             while(a[i]!=')'){                 if(a[i+1]=='+')                     b[j++]='-';                 else if(a[i+1]=='-')                     b[j++]='+';                 else if(a[i+1]!=')')                     b[j++]=a[i+1];                 i++;             }             c=j+1;         }         else if(a[i]=='(' && a[i-1]=='+'){             (c==0)?j=i:j=c;             while(a[i]!=')'){                 b[j++]=a[i+1];                 i++;             }             j--;             c=j+1;         }         else if(a[i]==')'){             i++;             continue;         } else {             b[j++]=a[i];         }         i++;     }     b[j]='\0';     printf("%s",b);     return 0; }

আউটপুট

Enter the string:(x+y)-z x+y-z
  1. পাইথন প্রোগ্রাম - স্ট্রিং থেকে ডুপ্লিকেট ক্যারেক্টার সরান

  2. Python প্রোগ্রাম: লিস্টের প্রতিটি এলিমেন্ট থেকে নির্দিষ্ট ডিজিট (Digit) রিমুভ করা

  3. পাইথন প্রোগ্রাম: সেট থেকে আইটেম সরিয়ে ফেলা (Duplicate)

  4. পাইথনে বাক্য থেকে ডুপ্লিকেট শব্দ সরিয়ে ফেলার প্রোগ্রাম