এই সমস্যায় আমাদের n সংখ্যক ধনাত্মক পূর্ণসংখ্যার একটি অ্যারে arr[] দেওয়া হয়েছে। আমাদের কাজ হলো অ্যারেতে আগের এবং পরের উপাদান চেয়ে বড় উপাদান বের করার প্রোগ্রাম তৈরি করা।
কোড বিবরণ: আমাদের অ্যারের সেই উপাদানগুলো বের করতে হবে যা শর্তটি পূরণ করে, উপাদানটি এর ইনডেক্স ১ কম থেকে বড় এবং ইনডেক্স ১ বেশি থেকেও বড়।
উদাহরণ দিয়ে বুঝি
ইনপুট: arr[] = {3, 2, 5, 7, 3, 4, 5}
আউটপুট: 7
ব্যাখ্যা -
কারেন্ট উপাদানের ইনডেক্স ১ কমের উপাদান, 5।
কারেন্ট উপাদানের ইনডেক্স ১ বেশি উপাদান, 3।
কারেন্ট উপাদান দুটির চেয়ে বড়।
সমাধানের পদ্ধতি
একটি সহজ সমাধান হলো অ্যারের প্রতিটি উপাদানের জন্য শর্ত চেক করে শর্ত পূরণকারী উপাদান প্রিন্ট করা।
এর জন্য নিচের ধাপগুলো অনুসরণ করতে হবে:
ধাপ ১: অ্যারের উপাদানগুলোর মাধ্যমে ইনডেক্স 1 থেকে n-2 পর্যন্ত লুপ চালান।
ধাপ ১.১: প্রতিটি উপাদান, arr[i] এর জন্য চেক করুন arr[i] > arr[i-1] এবং arr[i] > arr[i+1]।
ধাপ ১.২: যদি সত্য হয়, arr[i] প্রিন্ট করুন।
সমাধান minhaj করার প্রোগ্রাম
#include <iostream>
using namespace std;
void findElemenetsInArray(int arr[], int n) {
for (int i = 1; i < n-1; i++)
if ( (arr[i] > arr[i+1] && arr[i] > arr[i-1]) ) {
cout << arr[i] << "\t";
}
}
int main() {
int n = 8;
int arr[n] = { 5, 4, 7, 1, 17, 8, 3 };
cout << "The elements that satisfy the given condition are ";
findElemenetsInArray(arr, n);
return 0;
}
আউটপুট
The elements that satisfy the given condition are 7 17