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

সি++-এ অ্যারে এক্সপ্রেশন মূল্যায়ন (সংখ্যা, + এবং -)


এই সমস্যায় আমাদের একটি অ্যারে arr[] দেওয়া হয়েছে যা n সংখ্যক ক্যারেক্টার মান নিয়ে একটি এক্সপ্রেশন তৈরি করে। আমাদের কাজ হলো সংখ্যা, + এবং - সহ অ্যারে এক্সপ্রেশন মূল্যায়ন করা।

এই এক্সপ্রেশনটিতে শুধু সংখ্যা, '+' ক্যারেক্টার এবং '-' ক্যারেক্টার থাকে।

উদাহরণ দিয়ে বুঝি

ইনপুট: arr = {"5", "+", "2", "-8", "+", "9"}

আউটপুট: ৮

ব্যাখ্যা:

এক্সপ্রেশনটি হলো 5 + 2 - 8 + 9 = 8

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

সমস্যার সমাধান হলো প্রতিটি অপারেশন সম্পাদন করে মান ফেরত দেওয়া। প্রতিটি সংখ্যাকে এর সমতুল্য ইন্টিজার মান전에 রূপান্তর করতে হবে।

সমাধান minhaj করার প্রোগ্রাম

#include <bits/stdc++.h> 
using namespace std; 

int solveExp(string arr[], int n) { 
    if (n == 0) 
        return 0; 
    int value, result; 
    result = stoi(arr[0]); 
    for (int i = 2; i < n; i += 2) { 
        int value = stoi(arr[i]); 
        if (arr[i - 1] == "+") 
            result += value; 
        else 
            result -= value; 
    } 
    return result; 
} 

int main() { 
    string arr[] = { "5", "-", "3", "+", "8", "-", "1" }; 
    int n = sizeof(arr) / sizeof(arr[0]); 
    cout << "The solution of the equation is " << solveExp(arr, n); 
    return 0; 
}

আউটপুট

The solution of the equation is 9
  1. C++-এ কনস্ট্যান্ট এক্সট্রা স্পেস দিয়ে ধনাত্মক ও ঋণাত্মক সংখ্যা রি-অ্যারেঞ্জ করুন

  2. C++-এ O(n) টাইম ও O(1) এক্সট্রা স্পেস দিয়ে ধনাত্মক ও ঋণাত্মক সংখ্যা রি-অ্যারেঞ্জ করুন

  3. C++-এ -1 এবং +1=array-এর কোনো K আকারের সাবসেটের যোগফল ০ কিনা তা খুঁজুন

  4. C++-এ এক্সপ্রেশন ট্রি (Expression Tree) উদাহরণসহ