জাভাস্ক্রিপ্ট টিউটোরিয়াল-শিখুন গল্পে গল্পে সাথে 1100+ Exercise

  • জাভাস্ক্রিপ্ট পরিচিতি-Introduction to JavaScript
  • প্রোগ্রামিং শুরু করতে কতটুকু গণিত লাগে?
  • প্রোগ্রামিং শুরু করতে কতটুকু ইংরেজি জানা লাগে?
  • ভালো প্রোগ্রামার কিভাবে হবো? [+৭টি গুরুত্বপূর্ণ টিপস]
  • Loop-এর লুটপাট
  • While পাতলা ডাইল
  • While লুপ দিয়ে যোগফল
  • For লুপের খিচুড়ি
  • জোড়-বিজোড় লুপের শর্ত
  • লুপের break-আপ

Loop-এর লুটপাট



Uploaded Image


পোলাপান নতুন বাইক কিনলে কী করে? কিছু না, জাস্ট শো-অফ করার জন্য বাইকের পিছনে আরও দুইজনকে বসাইয়া ক্যাম্পাসে খালি গোল গোল চক্কর দেয় আর গড়গড় করে সাউন্ড করে। কানের বারোটা বাজায়। যতক্ষণ পর্যন্ত ক্যাম্পাসের সবাই না দেখছে যে— সে নতুন একটা বাইক কিনছে, ততক্ষন পর্যন্ত খালি চক্কর দিতেই থাকে, দিতেই থাকে। 


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


এই চক্রাকারে একই কাজ একটানা বারবার করাকে প্রোগ্রামিংয়ের ভাষায় লুপ (Loop) বলে।


তবে লুপ বুঝার আগে একটা অ্যারে লিখলাম। এইটার মধ্যে অনেকগুলা উপাদান আছে।


  const numbers = [12, 98, 45, 63, 21, 72];


আমি চাইলে ওপরের অ্যারের প্রতিটি এলিমেন্টকে আলাদা আলাদা করে প্রিন্ট করতে পারি। তবে যদি অ্যারের মধ্যে দশ লক্ষ উপাদান থাকে, তাহলে ধরে ধরে সবগুলাকে আলাদা আলাদাভাবে কনসোল লগ করা সম্ভব না। অন্যদিকে লুপ চালিয়ে ফেললে অ্যারের মধ্যে একটা উপাদান থাকুক আর ১ লক্ষ উপাদান থাকুক, সব তিন লাইন কোড দিয়েই আউটপুট হিসেবে দেখতে পারবি। 


  const numbers = [12, 98, 45, 63, 21, 72];

  for (const num of numbers) {
    console.log(num);
  }


এখন তুই বলতে পারিস, এগুলো কী লিখলি? এখানে আমরা একটি লুপ ব্যবহার করছি, এটাকে for of লুপ বলে। for of বলার কারণ হচ্ছে, এইটা লেখার জন্য একদম শুরুতে for লিখছি, আর মাঝখানে এক জায়গায় of লিখছি। তাই এইটার নাম for-of লুপ। এটা নিয়ে আমরা একটু পরে বিস্তারিত আলোচনা করব। তবে, তার আগে এর আউটপুটটা দেখে আসি:


Output:
12 
98
45
63
21 
72


এখন দেখা যাক, for (const num of numbers) { }— এটা আমরা কীভাবে করছি? for মানে হলো "জন্য"। এর পরের const num হচ্ছে একটি নতুন ভেরিয়েবল ডিক্লেয়ার করছি, যেটা for লুপের ভিতরে ব্যবহার করব। তুই চাইলে এই ভেরিয়েবলের নাম যেকোনো কিছু দিতে পারবি। আমরা এখানে নাম হিসেবে num ব্যবহার করছি। 


তা ছাড়া আমরা ভেরিয়েবল ডিক্লেয়ার করলেও সেটার মান সেট করিনি। কারণ, এইভাবে লিখলে লুপ যখন অ্যারের বিভিন্ন উপাদানের জন্য বারবার চলবে, তখন জাভাস্ক্রিপ্টই প্রত্যেকবার অ্যারের একটা উপাদান নিয়ে এসে এই ভেরিয়েবলের মান সেট করবে।


তোকে ধরে ধরে বারবার মান সেট করা লাগবে না। 


এরপর of, যা সব সময় বসবে এবং শেষে অ্যারের নাম লিখছি। of কেন লিখছি, সেটা বুঝতে হলে of-এর পরে দেখবি আছে একটা অ্যারের নাম। অর্থাৎ of numbers দিয়ে বুঝায়— "numbers-এর"।


সোজা বাংলায় বলতে গেলে, for (const num of numbers) দিয়ে numbers নামক অ্যারেতে যতগুলো উপাদান আছে, তা সবগুলোর একটা একটা করে num নামক ভেরিয়েবলে আলাদা আলাদা করে আসবে। অনেকটা খাবার নেয়ার লাইনে কেউ দাঁড়ালে একজন একজন করে আসবে খাবার নেয়ার জন্য। সেটা চিন্তা করতে পারস। 


সেকেন্ড ব্র্যাকেটের ভিতরে যা লেখা আছে, সেটা প্রত্যেকটা উপাদানের জন্য আলাদা আলাদাভাবে একবার একবার করে চলবে। আর আমরা যেহেতু সেকেন্ড ব্র্যাকেটের ভিতরে console.log(num); লিখিছি সেহেতু এক একটা উপাদানের মান এসে num নামক ভেরিয়েবলে সেট হবে এবং console.log লেখার কারণে সেটা console-এ দেখাবে বা আউটপুট হিসেবে দেখাবে।


এখন তুই চাইলে বিভিন্ন উদাহরণের মাধ্যমে প্র্যাকটিস করতে পারবি।


  const fruits = [“orange”, “apple”, “banana”,” jackfruit”, “watermelon”];

  for (const item of fruits) {
    console.log(item);
  }


কয়েকটা জিনিস দিয়ে এই লুপ লেখা প্র্যাকটিস কর। তাহলে তোর জন্য সহজ হয়ে উঠবে। প্র্যাকটিস করা ছাড়া কোনো কিছুই ভালোভাবে শেখা, বুঝা এবং ফীল করা পসিবল না। 

JavaScript Loop Practice:

  1. তুই 5টা পছন্দের সাবজেক্টের নাম লেখ। তারপর প্রোগ্রাম লিখে দেখ, কীভাবে লুপ ব্যবহার করে সব সাবজেক্টের নাম আলাদাভাবে প্রিন্ট হবে।
  2. তোর একদম পছন্দের খাবার গুলোর নাম লেখ। এখন লুপ ব্যবহার করে প্রোগ্রাম লিখে দেখ, কীভাবে সব খাবারের নাম আলাদা আলাদা করে প্রিন্ট হবে।
  3. একটা অ্যারের মধ্যে তোর ফ্যামিলি মেম্বারদের জন্মসাল লিখে ফেল। তারপর লুপ চালিয়ে সবার জন্মসাল আউটপুট হিসেবে দেখা।
  4. ক্রিকেট বা ফুটবল খেলায় তোর প্রিয় একাদশের একটা টিম বানিয়ে তোর প্রিয় খেলোয়াড়দের নাম একটা অ্যারের মধ্যে রাখ। তারপর কনসোল লগ করে সব খেলোয়াড়দের নাম আউটপুট হিসেবে দেখবি। 
  5. নেক্সট কবে কবে তোর পরীক্ষা আছে, সেই তারিখগুলা অ্যারের মধ্যে লিখে ফেল। তারপর লুপ ব্যবহার করে পরীক্ষার তারিখগুলা কনসোল লগ কর।


Previous ChapterNext Page