সি++ প্রোগ্রামিং ভাষা লুপের জন্য পরিসীমা-ভিত্তিক একটি তুলনামূলকভাবে সাম্প্রতিক বৈশিষ্ট্য যা প্রথম C++ 11 এ চালু করা হয়েছিল। লুপের জন্য পরিসীমা-ভিত্তিক পরিসীমা উপর একটি লুপ চালানো. তারা অ্যারে, ভেক্টর, মানচিত্র, সেট এবং এমনকি ব্যবহারকারী-সংজ্ঞায়িত প্রকার যা প্রয়োজনীয় ক্রিয়াকলাপগুলি বাস্তবায়ন করে এমন যেকোন ধারকটির সাথে কাজ করে যার একটি পুনরাবৃত্তিকারী রয়েছে।
লুপের জন্য রেঞ্জ-ভিত্তিক সিনট্যাক্স
ক লুপের জন্য পরিসীমা-ভিত্তিক একটি খুব সহজবোধ্য বাক্য গঠন আছে. এটি লুপ ভেরিয়েবল, ধারক বা সীমার মাধ্যমে পুনরাবৃত্তি এবং একটি কোলন দ্বারা গঠিত।
জন্য ( range_declaration : range_expression ) লুপ স্টেটমেন্ট
পরিসীমা_ঘোষণা: পরিসীমা-ঘোষণা হল রেঞ্জ-কম্পোনেন্ট এক্সপ্রেশনের উপাদানগুলির মতো একই ধরনের একটি ভেরিয়েবলের ঘোষণা। স্বয়ংক্রিয়ভাবে একটি উপাদানের ধরন নির্ধারণ করতে range_expression , স্বয়ংক্রিয় শব্দটি প্রায়শই ব্যবহৃত হয়।
পরিসীমা_প্রকাশ: উপাদানগুলির একটি তালিকা উপস্থাপন করে এমন প্রতিটি অভিব্যক্তি হল a range_expression .
লুপ বিবৃতি: লুপের বডিতে এক বা একাধিক স্টেটমেন্ট থাকে যেগুলো রেঞ্জ_এক্সপ্রেশনের শেষ পর্যন্ত পুনরাবৃত্তি করতে হবে।
লুপের জন্য রেঞ্জ-ভিত্তিক এক্সিকিউট করার পদ্ধতি
জন্য ব্যবহার করা যেতে পারে যে তিনটি পদ্ধতি আছে লুপের জন্য পরিসীমা-ভিত্তিক .
পদ্ধতি 1: অ্যারে ব্যবহার করা
লুপের জন্য পরিসীমা-ভিত্তিক এই মত অ্যারে ব্যবহার করে চালানো যেতে পারে.
# অন্তর্ভুক্ত করুননামস্থান std ব্যবহার করে;
int প্রধান ( ) {
int numArray [ ] = { 6 , 7 , 8 , 9 , 10 } ;
জন্য ( int n : numArray ) {
cout << n << '' ;
}
প্রত্যাবর্তন 0 ;
}
উপরের কোডে, numArray নামক একটি পূর্ণসংখ্যা অ্যারে শুরু হয়েছিল। তারপর numArray এর উপাদানগুলি a ব্যবহার করে প্রিন্ট করা হয়েছিল লুপের জন্য পরিসীমা-ভিত্তিক .
আউটপুট
পদ্ধতি 2: ভেক্টর ব্যবহার করা
লুপের জন্য পরিসীমা-ভিত্তিক এই মত ভেক্টর ব্যবহার করে চালানো যেতে পারে.
# অন্তর্ভুক্ত করুন# অন্তর্ভুক্ত <ভেক্টর>
নামস্থান std ব্যবহার করে;
int প্রধান ( )
{
int x;
ভেক্টর < int > মধ্যে = { 1 , 2 , 3 , 4 , 5 } ;
জন্য ( int x: v )
{
cout << এক্স << '' ;
}
প্রত্যাবর্তন 0 ;
}
উপরের কোডে, একটি ভেক্টর বলা হয় ভিতরে শুরু করা হয়েছিল। এখানে, ভেক্টর v এর উপাদানগুলি a ব্যবহার করে প্রিন্ট করা হয়েছিল লুপের জন্য পরিসীমা-ভিত্তিক।
আউটপুট
পদ্ধতি 3: লুপের ভিতরে সংগ্রহ ঘোষণা করুন
লুপের জন্য পরিসীমা-ভিত্তিক লুপের ভিতরেও ঘোষণা করা যেতে পারে। এটি একটি প্রকৃত অ্যারে বা ভেক্টরের অনুরূপভাবে কাজ করে।
# অন্তর্ভুক্ত করুননামস্থান std ব্যবহার করে;
int প্রধান ( ) {
জন্য ( int n: { 5 , 10 , পনের , বিশ , 25 } ) {
cout << n << '' ;
}
প্রত্যাবর্তন 0 ;
}
উপরের কোডে, সংগ্রহটি লুপের ভিতরে ঘোষণা করা হয় এবং তারপর মুদ্রিত হয়।
আউটপুট
লুপের জন্য রেঞ্জ ভিত্তিক সুবিধা এবং অসুবিধা
লুপের জন্য পরিসীমা-ভিত্তিক প্রচলিত তুলনায় আরো সুবিধা আছে জন্য বিভিন্ন উপায়ে লুপ, বিশেষ করে যখন পাত্রে কাজ করে। যেহেতু লুপ ভেরিয়েবলটি লুপের ভিতরে সংজ্ঞায়িত করা হয়েছে এবং পরিসরটি স্পষ্টভাবে বলা হয়েছে, এটি কোডটিকে অনেক ছোট এবং বোঝা সহজ করে তোলে। এগুলি আরও নিরাপদ, কারণ অফ-বাই-ওয়ান ত্রুটি বা অন্যান্য সূচীকরণের ভুলগুলি নিয়ে চিন্তা করার দরকার নেই৷ এগুলি আরও মানিয়ে নেওয়া যায় কারণ তারা যে কোনও ধারক ব্যবহার করতে পারে, তার ধরন বা আকার নির্বিশেষে। দ্য লুপের জন্য পরিসীমা-ভিত্তিক বেশ কিছু সুবিধা রয়েছে, যার মধ্যে একটি হল এটি আমাদের কোডকে আরও পরিষ্কার এবং সহজতর করে তোলে।
লুপের জন্য পরিসীমা-ভিত্তিক কিছু নির্দিষ্ট সীমাবদ্ধতা আছে, যদিও. যেহেতু লুপ ভেরিয়েবল প্রকৃত উপাদানের পরিবর্তে উপাদানটির একটি অনুলিপি বা একটি রেফারেন্স, এটি কন্টেইনারের উপাদানগুলিকে পরিবর্তন করতে ব্যবহার করা যাবে না। যেহেতু সম্পূর্ণ পরিসীমা ক্রমাগত মাধ্যমে পুনরাবৃত্ত হয়, আমরা কোনো উপাদান এড়িয়ে যেতে পারি না বা ডেটার শুধুমাত্র একটি অংশে পুনরাবৃত্তি করতে পারি না।
উপসংহার
লুপের জন্য পরিসীমা-ভিত্তিক এটি C++ প্রোগ্রামিং ভাষার একটি শক্তিশালী এবং বহুমুখী বৈশিষ্ট্য। লুপগুলির জন্য প্রচলিতের তুলনায়, তারা কন্টেইনারগুলির মাধ্যমে পুনরাবৃত্তি এবং কোড কমানোর জন্য একটি পরিষ্কার এবং সুস্পষ্ট পদ্ধতির সাথে উন্নত নিরাপত্তা এবং নমনীয়তা অফার করে। লুপের জন্য পরিসীমা-ভিত্তিক C++ প্রোগ্রামারদের জন্য শিখতে হবে।