কিভাবে C++ এ Upper_bound() ফাংশন ব্যবহার করবেন

Kibhabe C E Upper Bound Phansana Byabahara Karabena



গেমস, গ্রাফিক্স, ওয়েব সার্ভার এবং আরও অনেক কিছু সহ বিভিন্ন ধরণের প্রোগ্রাম C++ প্রোগ্রামিং ভাষা ব্যবহার করে তৈরি করা যেতে পারে। যাইহোক, কখনও কখনও আমাদের প্রোগ্রামগুলির ডেটাতে কিছু ক্রিয়াকলাপ সম্পাদন করতে হতে পারে, যেমন অনুসন্ধান করা, বাছাই করা, বা উপাদানগুলির একটি পরিসরের মধ্যে সর্বাধিক বা সর্বনিম্ন মান খুঁজে বের করা। উপাদানগুলির একটি সাজানো পরিসরে একটি মানের উপরের সীমা খুঁজে বের করতে ব্যবহার করা যেতে পারে এমন একটি ফাংশন হল upper_bound()।

C++ এ upper_bound() ফাংশন কি?

C++-এ upper_bound() ফাংশন হল এমন একটি ফাংশন যা উপাদানগুলির একটি সাজানো পরিসর এবং একটি মানকে আর্গুমেন্ট হিসেবে নেয় এবং মানের থেকে বড় পরিসরের প্রথম উপাদানের দিকে নির্দেশ করে একটি পুনরাবৃত্তিকারী প্রদান করে।







এটির দুটি ভিন্ন ধরনের আর্গুমেন্ট রয়েছে:



সংখ্যা উপরের_বাউন্ড ( একের উপর. প্রথম , একের উপর. শেষ , মান )

ইটারেটর যা পরীক্ষিত উপাদানগুলির পরিসর নির্দিষ্ট করে তারা প্রথম এবং শেষ। ব্যবহৃত ব্যবধানে প্রথম উপাদান থেকে শেষ পর্যন্ত সমস্ত উপাদান রয়েছে কিন্তু শেষ দ্বারা নির্দেশিত উপাদান অন্তর্ভুক্ত নয়। মান হল উপাদানগুলির সাথে তুলনা করার মান।



সংখ্যা উপরের_বাউন্ড ( একের উপর. প্রথম , একের উপর. শেষ , মান, compare compare )

এই ক্ষেত্রে, বাইনারি ফাংশন কম্প এমন একটি মান তৈরি করে যা একটি বুলে রূপান্তরিত হতে পারে এবং পরিসরের আইটেমগুলির মতো একই ধরণের দুটি প্যারামিটার গ্রহণ করে। যদি একটি নির্দিষ্ট শর্ত নির্দেশ করে যে প্রথম আর্গুমেন্টটি দ্বিতীয়টির চেয়ে বেশি নয়, তবে ফাংশনটি অবশ্যই সত্য ফলাফল প্রদান করবে এবং যদি না হয় তবে এটি মিথ্যা ফেরত দেবে।





কিভাবে C++ এ upper_bound() ফাংশন ব্যবহার করবেন

upper_bound() ফাংশনটি বিভিন্ন পরিস্থিতিতে উপাদানের সাজানো পরিসরে একটি মানের উপরের সীমা খুঁজে পেতে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, আমরা একটি সাজানো অ্যারে বা ভেক্টরে একটি উপাদানের অবস্থান খুঁজে পেতে বা একটি সেট বা মানচিত্রে পরবর্তী বৃহত্তর উপাদানটি খুঁজে পেতে এটি ব্যবহার করতে পারি। C++ এ কিভাবে upper_bound() ফাংশন ব্যবহার করতে হয় তার কিছু উদাহরণ এখানে দেওয়া হল:

উদাহরণ 1: একটি সাজানো অ্যারেতে একটি উপাদানের অবস্থান খুঁজে পেতে upper_bound() ফাংশন ব্যবহার করে

এখানে একটি উদাহরণ দেওয়া হল, যা upper_bound() ফাংশন ব্যবহার করে পূর্ণসংখ্যার সাজানো অ্যারেতে একটি উপাদানের অবস্থান খুঁজে বের করে এবং এটি স্ক্রিনে প্রদর্শন করে:



# অন্তর্ভুক্ত করুন

#include

ব্যবহার নামস্থান std ;

int প্রধান ( )

{

int অ্যারে [ ] = { পনের , 35 , চার পাঁচ , 55 , 65 } ;

int = আকার ( অ্যারে ) / আকার ( অ্যারে [ 0 ] ) ;

cout << 'অ্যারেতে রয়েছে:' ;

জন্য ( int i = 0 ; i < ; i ++ )

cout << অ্যারে [ i ] << '' ;

cout << ' \n ' ;

int = চার পাঁচ ; // একটি মান ঘোষণা এবং শুরু করুন

int * পি = ঊর্ধ্বসীমা ( অ্যারে, অ্যারে + ক, খ ) ;

cout << 'এর উপরের সীমা' << << 'অবস্থানে আছে:' << ( পি - অ্যারে ) << ' \n ' ; // পয়েন্টার গাণিতিক ব্যবহার করে অবস্থান প্রদর্শন করুন

ফিরে 0 ;

}

প্রথমে প্রোগ্রামটি প্রয়োজনীয় হেডার ফাইল এবং সংখ্যা সম্বলিত অ্যারে নির্ধারণ করে এবং তারপর অ্যারের আকার পেতে sizeof() ফাংশন ব্যবহার করে। পরবর্তী a for লুপ অ্যারের উপাদানগুলি প্রদর্শন করতে ব্যবহৃত হয় এবং তারপরে একটি পূর্ণসংখ্যা ঘোষণা করা হয় যার অবস্থান পয়েন্টার ব্যবহার করে নির্ধারণ করা হয় এবং এটি আউটপুটে প্রদর্শিত হয়:

উদাহরণ 2: একটি সেটে পরবর্তী বৃহত্তর উপাদান খুঁজে পেতে upper_bound() ফাংশন ব্যবহার করে

এখানে একটি উদাহরণ কোড যা upper_bound() ফাংশন ব্যবহার করে পূর্ণসংখ্যার একটি সেটে একটি প্রদত্ত মানের চেয়ে পরবর্তী বৃহত্তর উপাদান খুঁজে বের করে এবং এটি স্ক্রিনে প্রদর্শন করে:

# অন্তর্ভুক্ত করুন

#include

# অন্তর্ভুক্ত <ভেক্টর>

ব্যবহার নামস্থান std ;

int প্রধান ( )

{

সেট < int > একের উপর = { পনের , 25 , 35 , চার পাঁচ , 55 } ; // পূর্ণসংখ্যার একটি সেট ঘোষণা এবং আরম্ভ করুন

cout << 'প্রদত্ত সংখ্যা:' ;

জন্য ( স্বয়ংক্রিয় : একের উপর ) // লুপের জন্য রেঞ্জ-ভিত্তিক ব্যবহার করে সেট উপাদানগুলি প্রদর্শন করুন

cout << << '' ;

cout << ' \n ' ;

int = চার পাঁচ ; // একটি মান ঘোষণা এবং শুরু করুন

স্বয়ংক্রিয় এটা = ঊর্ধ্বসীমা ( একের উপর. শুরু ( ) , একের উপর. শেষ ( ) , ক ) ; // upper_bound() ব্যবহার করে সেটে x এর উপরের সীমাটি খুঁজুন

যদি ( এটা ! = একের উপর. শেষ ( ) ) // পুনরাবৃত্তিকারী বৈধ কিনা তা পরীক্ষা করুন

cout << 'এর চেয়ে পরবর্তী উচ্চতর সংখ্যা' << << 'হয়' << * এটা << ' \n ' ; // ডিরেফারেন্স অপারেটর ব্যবহার করে উপাদান প্রদর্শন করুন

অন্য

cout << 'এর চেয়ে বেশি সংখ্যা নেই' << << ' \n ' ; // একটি বার্তা প্রদর্শন করুন যদি এই ধরনের কোনো উপাদান পাওয়া না যায়

ফিরে 0 ;

}

প্রথমে কোডটি প্রয়োজনীয় শিরোনাম ফাইলগুলিকে সংজ্ঞায়িত করে এবং তারপরে পাঁচটি উপাদানের একটি ভেক্টর সংজ্ঞায়িত করা হয়, পরবর্তীতে ভেক্টরটি স্বয়ংক্রিয় কীওয়ার্ড ব্যবহার করে প্রদর্শিত হয় কারণ এটি উপাদানগুলির ডেটা টাইপ স্বয়ংক্রিয়ভাবে সেট করতে পারে। এর পরে একটি 45 মান বিশিষ্ট একটি ভেরিয়েবল ঘোষণা করা হয় যা পরে upper_bound() ফাংশন ব্যবহার করে সংজ্ঞায়িত ভেক্টরের সাথে তুলনা করা হয় এবং তারপরে এটি তুলনা ফলাফল প্রদর্শন করে:

উপসংহার

upper_bound() ফাংশন হল একটি ফাংশন যা একটি সাজানো পরিসরের প্রথম উপাদানের দিকে নির্দেশ করে একটি ইটারেটর প্রদান করে যা একটি প্রদত্ত মানের থেকে বড়। একটি নির্দিষ্ট সংখ্যার চেয়ে বড় বা সমান একটি ব্যবধানে প্রথম সংখ্যাটি সনাক্ত করতে, C++ এ upper_bound() ফাংশনটি ব্যবহার করুন। এটি একটি তালিকায় পরবর্তী সর্বোচ্চ নম্বর খোঁজার বা প্রদত্ত থ্রেশহোল্ডের চেয়ে বড় একটি সাজানো অ্যারেতে প্রথম উপাদান খুঁজে পাওয়ার মতো কাজের জন্য কার্যকর হতে পারে।