অনেকদিন পর আবার লিখতে বসলাম এর ৫ম পর্ব। ব্যস্ততা ও পরীক্ষা চলার কারণেই গত কয়েক মাস টেকটিউনস এ একেবারেই অনিয়মিত ছিলাম। এবার আবার ফুরসত নিয়ে লিখতে চেষ্টা করছি। পরীক্ষা শেষ হলে পুনরায় নতুন উদ্যমে শুরু করব ইনশাল্লাহ। আমার অনুপস্থিতি মার্জনা করবেন। ধন্যবাদ
গত পর্ব থেকে শুরু করেছি কন্ট্রোল স্ট্রাকচার নিয়ে আলোচনা। এটি তার ২য় পর্ব। গত পর্বে আমরা দেখেছিঃ
এপর্বে আলোচনা করবঃ
আসুন, তাহলে শুরু করি আজকের বিষয়বস্ত নিয়ে সার্বিক আলোচনা।
গত পর্বেই while নিয়ে আলোচনা করার সময় looping সম্পর্কে ধারণা দেয়া হয়েছে। মনে না থাকলে <লিঙ্ক> এখানে ক্লিক করে দেখে নিন গত পর্বটি।
আমরা আজকে লুপ এর কাজ করার জন্য আরেকটি কন্ট্রোল স্ট্রাকচার ব্যাবহার করব আর তাহল for.
for লেখার নিয়মঃ
for(i=0 ; i<n ; i++)
{
//Your Code Goes Here
}
এখানে i হল একটি index variable যেটা পূর্বেই declare করে নিতে হবে। এখানে n হল সেই সংখ্যা যেটি নির্দেশ করে লুপ কতবার ঘুরবে অর্থাৎ একটি কাজ কতবার সম্পন্ন হবে সেটি নির্দেশ করা হয় এই n এর মান দ্বারা।
এখানে একটি বিষয় লক্ষণীয়, আমি i এর মান ০(শূন্য) থেকে শুরু করে n এর মান থেকে এক কম পর্যন্ত নিয়েছি। আপনি ইচ্ছে করলে i এর মান ১(এক) থেকে n পর্যন্ত নিতে পারেন। সেক্ষেত্রে শুধু i=0 এর পরিবর্তে i=1 এবং i<n এর পরিবর্তে i<=n লিখতে হবে।
এবার আসি বিস্তারিত আলোচনায়,
for (initialization; condition; increase)
{
Statement
}
এখানে একটি রূপরেখা দেয়া হল। এখন মিলিয়ে দেখুন,
i এর মান n এর সমান বা বড় হলেই লুপ বন্ধ হয়ে যাবে।
3. এরপর হল increment অংশ। এ অংশে i এর মান কিভাবে/কত করে বাড়বে সেটি উল্লেখ করা হয়। i++ এর অর্থ হল I এর মান ১ করে প্রতিবার বাড়বে। আপনি যদি ১ এর বেশিবার করে I এর মান বাড়াতে চান (উদাহরন স্বরুপ যদি I এর মান ২ করে বাড়াতে চান) তাহলে, লিখুন i=i+2
উদাহরনঃ
গতপর্বে আপনাদের জন্য একটি কাজ নিজেদের করতে বলেছিলাম সেটি আমি for loop দিয়ে করে দিলাম।
সমস্যাটি খুব সহজ। সেটি হল ১০০ ছাত্রের বিষয়ভিত্তিক নাম্বার ইনপুট নিতে হবে এবং যোগ করতে হবে। আমাদের সুবিধার জন্য আসুন ধরে নেই বিষয়ের সংখ্যা দুইটি।
সমস্যাটি কিভাবে সমাধান করব তা ধাপে ধাপে আলোচনা করছি।
ধাপ-১
প্রথমে চিন্তা করুন আপনার কি কি কাজ করতে হবে। প্রথমে কোন ছাত্রের বিষয়ভিত্তিক নাম্বার ইনপুট নিতে হবে।
ধাপ-২
এরপর সবগুলো নাম্বার যোগ করে সেটা দেখতে হবে তা পাস মার্কের কম না বেশি। যদি কম হয়, তাহলে ছাত্রকে অকৃতকার্য ঘোষনা করতে হবে।
ধাপ-৩
এই এক কাজ আপনাকে মোট ছাত্র সংখ্যার সমপরিমান বার করতে হবে। এর অর্থ প্রত্যেক ছাত্রের জন্য করতে হবে।
কোডঃ
এখানে লক্ষ করুন দুইটা লুপ চালানো হয়েছে। সব থেকে বাইরের লুপ যেটা i দিয়ে ইন্ডেক্স করা হয়েছে সেটি প্রত্যেক ছাত্রের জন্য কাজ করছে। এর ভিতরের লুপ যেটা j দিয়ে ইন্ডেক্স করা হয়েছে সেটি বিষয়ভিত্তিক নাম্বার ইনপুট নিচ্ছে। এখানে একটি নতুন ব্যাপার লক্ষ করছেন, সেটি হল- num=int.Parse(input)
এখানে Type Casting করা হয়েছে। আমার পরবর্তি টিউনে Type Casting নিয়ে আলোচনা করা হবে।
এই প্রোগ্রামটি নিজে করে রান করে দেখুন কাজ করে কিনা। সমস্যা হলে অবশ্যই জানাবেন। ধন্যবাদ। ভাল থাকবেন।
আমি জ্যোতি। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 13 বছর 11 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 17 টি টিউন ও 98 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 2 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
আমি জ্যোতি চৌধুরী। কম্পিউটার সাইন্স এন্ড ইঞ্জিনিয়ারিং এর ছাত্র। মিলিটারি ইন্সটিটিউট অফ সাইন্স এন্ড টেকনোলজি, মিরপুর ক্যান্টনমেন্ট এ পড়াশোনা করছি। ভাল লাগে বন্ধুদের সাথে আড্ডা দিতে, কম্পিউটার প্রযুক্তি সম্পর্কে জানতে। আগ্রহ আছে সফটওয়্যার ডেভেলপমেন্ট, প্রোগ্রামিং ও ওয়েব ডেভেলপমেন্টের প্রতি। স্বপ্ন দেখতে ভালবাসি। স্বপ্ন কে বাস্তবে রুপায়ন করতে পছন্দ করি।
ভাইয়া দয়া করে এর source url টা দিন উপকৃত হব।