এই সমস্যায়, আমাদের চারটি পূর্ণসংখ্যা দেওয়া হয়েছে। আমাদের কাজ হল 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