অ্যারের আকার C ++ খুঁজুন

Find Array Size C



একটি অ্যারে হল একটি ধারক যা একই ডাটা টাইপের উপাদান ধারণ করে। যদি আমরা একটি অ্যারের প্রকৃত আকার না জানি, এটি বিভিন্ন পদ্ধতি দ্বারা নির্ধারিত হতে পারে। যখন আমরা একটি অ্যারের আকার সম্পর্কে কথা বলি, প্রকৃতপক্ষে আমরা অ্যারেতে উপস্থিত উপাদানগুলির সংখ্যা সম্পর্কে কথা বলছি। কখনও কখনও, আমরা অ্যারের আকার নির্ধারণ করি, এবং কখনও কখনও বন্ধনীগুলি খালি রাখা হয়। এটি একটি আপাত আকার যা শুধুমাত্র একটি অ্যারের মধ্যে মান সঞ্চয় করার ক্ষমতা দেখায়। উদাহরণস্বরূপ, একটি নমুনা অ্যারে ঘোষণা বিবেচনা করুন

Int অ্যারে[] = {,2,3,4,5,6}

এখানে একটি অ্যারের আকার বা একটি অ্যারের দৈর্ঘ্য 6.। বিভিন্ন অপারেশন প্রয়োগ করে প্রকৃত আকার পাওয়া যায়। একটি অ্যারের আকার পেতে এই ক্রিয়াকলাপগুলি এই নিবন্ধে ব্যবহৃত হয়।







উদাহরণ 1

এই দৃষ্টান্তে, আমরা শুরু () এবং শেষ () ধারণাটি ব্যবহার করব। এই পদ্ধতির মাধ্যমে একটি অ্যারের আকার সহজেই জানা যায়। এই দুটি লাইব্রেরি যা স্ট্যান্ডার্ড লাইব্রেরির জন্য পরিচিত। এই দুটি ফাংশন পুনরাবৃত্তিকে ফেরত দেয় যা অ্যারের প্রাথমিক এবং শেষ বিন্দুগুলি দেখায়। হেডার থেকে শুরু করে, আমরা একটি অ্যারে লাইব্রেরি ব্যবহার করি। এটি অ্যারের সাথে সম্পর্কিত সমস্ত ফাংশন অন্তর্ভুক্ত করবে। প্রধান ফাংশনে, আমরা পূর্ণসংখ্যা মানসম্পন্ন একটি অ্যারে চালু করেছি।



খরচ<<………।<<শেষ(প্রতি)-বেগিব(প্রতি)<<

এখানে আমরা অ্যারের আকার উল্লেখ করিনি। Cout- এর পরে প্রদর্শন বিবৃতিতে, আমরা end () এবং start () ফাংশন ব্যবহার করি। এই দুটি ফাংশনের মধ্যে পার্থক্য আমাদের একটি অ্যারের আকার দেখাবে। এই ফাংশনগুলির পরামিতিগুলিতে, আমরা অ্যারে পাস করেছি। এটি করার মাধ্যমে, প্রকৃত আকার নির্ধারণ করা হবে। এই ফাংশন থেকে প্রাপ্ত ফলাফল সরাসরি প্রদর্শিত হয়।







এখন আউটপুটের দিকে এগোচ্ছি। আমাদের লিনাক্সে এই প্রোগ্রামগুলি চালানোর কথা, তাই আমাদের উবুন্টু টার্মিনালের অংশগ্রহণ প্রয়োজন। যেহেতু আমরা C ++ কোড ব্যবহার করছি, তাই আমাদের কম্পাইলারের মাধ্যমে কোড কম্পাইল করতে হবে। যে G ++ কম্পাইলার। কোড কম্পাইল করার পর, আমরা এটি এক্সিকিউট করব। নীচের কমান্ডগুলি আমরা যে আউটপুট পদ্ধতি ব্যবহার করেছি তা দেখায়।

$ গ্রাম++ -o কোড 2 কোড 2।

$/কোড 2



আপনি এখন আউটপুট দেখতে পারেন। Std এর ক্ষেত্রে আরেকটি অনুরূপ উদাহরণ হল দূরত্বের কাজ। এই দূরত্ব শুরু () এবং শেষ () ফাংশন ব্যবহার করে গণনা করা হয়। Std দিয়ে এই ফাংশনগুলি ব্যবহার করে এটি সম্পন্ন হয়।

Int n=ঘন্টার:: দূরত্ব(ঘন্টার::শুরু(আগমন),ঘন্টার::শেষ(আগমন));

আউটপুট cout বিবৃতিতে প্রাপ্ত হয়। রেকর্ডটি দেখতে, কোডটি চালানোর জন্য আবার কম্পাইলার ব্যবহার করুন।

এখানে আপনি দেখতে পাচ্ছেন যে আমাদের কাঙ্ক্ষিত আউটপুট পাওয়া গেছে।

উদাহরণ 2

এই উদাহরণটি C ++ কোডে sizeof () ফাংশনের ব্যবহারের সাথে সম্পর্কিত, কারণ এই মানটি বাইট আকারে ডেটার প্রকৃত আকার প্রদান করে। উপরন্তু, এটি একটি অ্যারে সঞ্চয় করতে ব্যবহৃত বাইটের সংখ্যা ফেরত দেওয়ার সাথেও সম্পর্কিত। অন্য কথায়, এই উদাহরণে, প্রথম ধাপটি একটি অ্যারের আকার ঘোষণা না করে একটি অ্যারে আরম্ভ করা। sizeof () ফাংশনের জন্য ব্যবহৃত সিনট্যাক্স হল:

ইন্ট আল= আকার(আগমন)/আকার(আগমন[0]);

অ্যারে যেখানে অ্যারে। arr [0] অ্যারের উপাদানগুলির সূচক দেখায়।

সুতরাং এই বিবৃতিটি বোঝায় যে অ্যারের আকারটি উপস্থিত সমস্ত উপাদানগুলির আকার দ্বারা বিভক্ত, একে একে। এটি দৈর্ঘ্য গণনায় সাহায্য করে। আমরা ফাংশন থেকে ভ্যালু রিটার্ন গ্রহণ এবং সঞ্চয় করার জন্য একটি পূর্ণসংখ্যা পরিবর্তনশীল ব্যবহার করেছি।

আমরা একই কম্পাইল-এক্সিকিউশন পদ্ধতি দ্বারা কমান্ড প্রম্পট থেকে এখানে আউটপুট পাব।

আউটপুটটি অ্যারের আকার দেখায়, যা এতে উপস্থিত উপাদানগুলির সংখ্যা বোঝায়, যা 6।

উদাহরণ 3

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

খরচ<<…।<<আগমনআকার()<<

যেখানে 'arr' অ্যারে, ফলাফল আনতে বা ফাংশন অ্যাক্সেস করার জন্য, আমাদের সাইজের ফাংশন সহ অ্যারের নাম প্রয়োজন।

ফলাফল প্রদর্শন করতে, আমরা g ++ কম্পাইলার ব্যবহার করে ফলাফল কম্পাইল এবং এক্সিকিউট করি।

আউটপুট থেকে, আপনি দেখতে পারেন যে ফলাফলটি আমাদের পছন্দসই যা অ্যারের প্রকৃত আকার দেখায়।

উদাহরণ 4

একটি অ্যারের আকার পয়েন্টার ব্যবহার করেও পাওয়া যেতে পারে কারণ পয়েন্টার ভেরিয়েবলের মান ঠিকানা/অবস্থান সংরক্ষণ করে। এখন নিচের দেওয়া একটি উদাহরণ বিবেচনা করুন।

প্রাথমিক ধাপ হল যথারীতি একটি অ্যারে আরম্ভ করা। তারপর পয়েন্টার অ্যারে সাইজের জন্য কাজ করে।

ইন্ট লেন= *(&অ্যারে+ )- অ্যারে;

এটি মূল বক্তব্য যা পয়েন্টার হিসাবে কাজ করে। * একটি অ্যারেতে যেকোনো উপাদানের অবস্থান সনাক্ত করতে ব্যবহৃত হয়, যেখানে & অপারেটর পয়েন্টার এর মাধ্যমে প্রাপ্ত অবস্থানের মান পেতে ব্যবহৃত হয়। এইভাবে আমরা পয়েন্টার থেকে অ্যারের আকার পাই। ফলাফল টার্মিনালের মাধ্যমে দেখানো হয়। উত্তর একই। উল্লেখিত অ্যারের আকার 13 হিসাবে বলা হয়েছিল।

উদাহরণ 5

এই উদাহরণে, আমরা টেমপ্লেট আর্গুমেন্ট কর্তনের ধারণা ব্যবহার করেছি। একটি টেমপ্লেট আর্গুমেন্ট একটি বিশেষ ধরনের একটি পরামিতি। এটি যে কোনো ধরনের যুক্তি পাস করতে ব্যবহৃত হয়, যেমন নিয়মিত ফাংশন যা একটি যুক্তি হিসাবে পাস করা যায়।

যখন একটি অ্যারে একটি প্যারামিটার হিসাবে পাস করা হয়, এটি ঠিকানা দেখানোর জন্য একটি পয়েন্টার রূপান্তরিত হয়। নির্দিষ্ট অ্যারের দৈর্ঘ্য পেতে, আমরা টেমপ্লেট আর্গুমেন্ট কাটানোর এই পদ্ধতিটি ব্যবহার করি। Std হল স্ট্যান্ডার্ডের একটি সংক্ষিপ্ত রূপ।

প্রদত্ত উদাহরণ বিবেচনা করে, আমরা অ্যারের আকার পেতে ব্যবহৃত একটি টেমপ্লেট ক্লাস চালু করেছি। এটি একটি ডিফল্ট অন্তর্নির্মিত ক্লাস যা টেমপ্লেট আর্গুমেন্টের সমস্ত কার্যকারিতা ধারণ করে।

Constexpr std: : size_tআকার(constটি(&অ্যারে)[এন])ব্যতিক্রম{

প্রত্যাবর্তনএন;

}

এই ধারণার মধ্যে এটি একটি ধ্রুবক লাইন। আউটপুট সরাসরি cout স্টেটমেন্টে প্রাপ্ত হয়।

আউটপুট থেকে, আপনি দেখতে পারেন যে আমরা আমাদের পছন্দসই আউটপুট পেয়েছি: অ্যারের আকার।

উদাহরণ 6

আমরা প্রোগ্রামে অ্যারের সাইজ পেতে std :: vector ব্যবহার করি। এটি এক ধরনের ধারক; এর কাজ হল গতিশীল অ্যারে সংরক্ষণ করা। এটি বিভিন্ন অপারেশনের জন্য বিভিন্ন পদ্ধতিতে কাজ করে। এই উদাহরণটি সম্পন্ন করার জন্য, আমরা একটি ভেক্টর লাইব্রেরি ব্যবহার করেছি যাতে এতে সমস্ত ভেক্টর ফাংশন অন্তর্ভুক্ত রয়েছে। এটি প্রোগ্রামে ব্যবহৃত সিন, কাউট, এন্ডএল এবং ভেক্টর স্টেটমেন্টগুলিও ঘোষণা করে। প্রোগ্রামে প্রথমে একটি অ্যারে শুরু করা হয়। আউটপুট ভেক্টর আকার দ্বারা cout বিবৃতিতে প্রদর্শিত হয়।

খরচ<<ভেক্টর আকার: <<int_array।আকার() <<endl;

এখন আমরা উবুন্টু টার্মিনাল থেকে আউটপুট দেখতে পাব। অ্যারের আকার এতে উপস্থিত উপাদানগুলির জন্য সঠিক।

উপসংহার

এই টিউটোরিয়ালে, আমরা অ্যারের দৈর্ঘ্য বা আকার পেতে একটি ভিন্ন পদ্ধতি ব্যবহার করেছি। কিছু অন্তর্নির্মিত ফাংশন, অন্যগুলি ম্যানুয়ালি ব্যবহার করা হয়।