এই সমস্যায়, আমাদের চারটি পূর্ণসংখ্যা দেওয়া হয়েছে। আমাদের কাজ হল C++ এ শর্তসাপেক্ষ অরবিটওয়াইজ অপারেটর ব্যবহার না করে সর্বোচ্চ চারটি সংখ্যা খুঁজে বের করার জন্য একটি প্রোগ্রাম তৈরি করা।
কোড বর্ণনা - এখানে, আমাদের চারটি পূর্ণসংখ্যার মান আছে। এবং আমাদের কোন শর্তসাপেক্ষ বা বিটওয়াইজ অপারেটর ব্যবহার না করে এই সংখ্যাগুলির মধ্যে সর্বাধিক মান খুঁজে বের করতে হবে৷
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট
a = 4, b = 7, c = 1, d = 9
আউটপুট
9
সমাধান পদ্ধতি
সমস্যা সমাধানের জন্য, আমরা প্রথমে দুটি উপাদান নেব, তারপর পেয়ার সহ বৃহত্তর উপাদান নেব। প্রতিটি জোড়ার জন্য, আমরা একটি 2 উপাদান arr[] তৈরি করব এবং বুলিয়ান মান ব্যবহার করে কোন উপাদানটি বেশি তা খুঁজে বের করব। বুলিয়ান মানটি সূচক হিসাবে ব্যবহৃত হয়, সূত্র ব্যবহার করে পাওয়া যায় [abs(x - y) + (x - y)] .
একটি সহজ ব্যাখ্যা হল,
arr[0] arr[1] এর চেয়ে বড় হলে, বুলিয়ান মান False . অন্যথায় এটি সত্য .
আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,
উদাহরণ
#include <iostream>
using namespace std;
int findMax(int x, int y){
int arr[2] = {x,y};
bool MaxIndex = ( !(arr[0] - arr[1] + abs(arr[0] - arr[1])));
return arr[MaxIndex];
}
int CalcMaxElement(int a, int b, int c, int d) {
int max = a;
max = findMax(max, b);
max = findMax(max, c);
max = findMax(max, d);
return max;
}
int main() {
int a = 4, b = 9, c = 7, d = 1;
cout<<"The maximum of four numbers is "<<CalcMaxElement(a,b,c,d);
return 0;
} আউটপুট
The maximum of four numbers is 9