এই সমস্যায় আমাদের একটি অ্যারে 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