You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/bn/2-js-basics/4-arrays-loops/assignment.md

11 KiB

অ্যারে এবং লুপ অ্যাসাইনমেন্ট

নির্দেশনা

অ্যারে এবং লুপ নিয়ে কাজ করার অনুশীলন করতে নিচের অনুশীলনগুলো সম্পূর্ণ করুন। প্রতিটি অনুশীলন পাঠের ধারণাগুলোর উপর ভিত্তি করে তৈরি এবং বিভিন্ন লুপ টাইপ এবং অ্যারে মেথড প্রয়োগ করতে উৎসাহিত করে।

অনুশীলন ১: সংখ্যা প্যাটার্ন জেনারেটর

একটি প্রোগ্রাম তৈরি করুন যা ১-২০ এর মধ্যে প্রতিটি ৩য় সংখ্যাকে তালিকাভুক্ত করে এবং কনসোলে প্রিন্ট করে।

প্রয়োজনীয়তা:

  • একটি for লুপ ব্যবহার করুন কাস্টম ইনক্রিমেন্ট সহ
  • সংখ্যাগুলো ব্যবহারকারী-বান্ধব ফরম্যাটে প্রদর্শন করুন
  • আপনার লজিক ব্যাখ্যা করে বর্ণনামূলক মন্তব্য যোগ করুন

প্রত্যাশিত আউটপুট:

3, 6, 9, 12, 15, 18

টিপ: আপনার for লুপের iteration-expression পরিবর্তন করুন যাতে সংখ্যা স্কিপ করা যায়।

অনুশীলন ২: অ্যারে বিশ্লেষণ

কমপক্ষে ৮টি ভিন্ন সংখ্যার একটি অ্যারে তৈরি করুন এবং ডেটা বিশ্লেষণ করার জন্য ফাংশন লিখুন।

প্রয়োজনীয়তা:

  • numbers নামে একটি অ্যারে তৈরি করুন যাতে কমপক্ষে ৮টি মান থাকে
  • একটি ফাংশন findMaximum() লিখুন যা সর্বোচ্চ সংখ্যা রিটার্ন করে
  • একটি ফাংশন findMinimum() লিখুন যা সর্বনিম্ন সংখ্যা রিটার্ন করে
  • একটি ফাংশন calculateSum() লিখুন যা সমস্ত সংখ্যার মোট রিটার্ন করে
  • প্রতিটি ফাংশন পরীক্ষা করুন এবং ফলাফল প্রদর্শন করুন

বোনাস চ্যালেঞ্জ: একটি ফাংশন তৈরি করুন যা অ্যারেতে দ্বিতীয় সর্বোচ্চ সংখ্যাটি খুঁজে বের করে।

অনুশীলন ৩: স্ট্রিং অ্যারে প্রসেসিং

আপনার প্রিয় সিনেমা/বই/গানের একটি অ্যারে তৈরি করুন এবং বিভিন্ন লুপ টাইপ অনুশীলন করুন।

প্রয়োজনীয়তা:

  • কমপক্ষে ৫টি স্ট্রিং মান সহ একটি অ্যারে তৈরি করুন
  • একটি প্রচলিত for লুপ ব্যবহার করে আইটেমগুলো নম্বর সহ প্রদর্শন করুন (১. আইটেম নাম)
  • একটি for...of লুপ ব্যবহার করে আইটেমগুলো বড় অক্ষরে প্রদর্শন করুন
  • forEach() মেথড ব্যবহার করে মোট অক্ষর গণনা করুন এবং প্রদর্শন করুন

উদাহরণ আউটপুট:

Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar

For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR

Character count:
Total characters across all titles: 42

অনুশীলন : ডেটা ফিল্টারিং (উন্নত)

একটি প্রোগ্রাম তৈরি করুন যা শিক্ষার্থীদের প্রতিনিধিত্বকারী অবজেক্টের একটি অ্যারে প্রসেস করে।

প্রয়োজনীয়তা:

  • name, age, grade প্রপার্টি সহ কমপক্ষে ৫টি শিক্ষার্থীর অবজেক্টের একটি অ্যারে তৈরি করুন
  • ১৮ বা তার বেশি বয়সের শিক্ষার্থীদের খুঁজে বের করতে লুপ ব্যবহার করুন
  • সমস্ত শিক্ষার্থীর গড় গ্রেড গণনা করুন
  • শুধুমাত্র ৮৫ এর উপরে গ্রেড সহ শিক্ষার্থীদের নিয়ে একটি নতুন অ্যারে তৈরি করুন

উদাহরণ কাঠামো:

const students = [
  { name: "Alice", age: 17, grade: 92 },
  { name: "Bob", age: 18, grade: 84 },
  // Add more students...
];

আপনার কোড পরীক্ষা করা

আপনার প্রোগ্রামগুলো পরীক্ষা করুন:

  1. প্রতিটি অনুশীলন আপনার ব্রাউজারের কনসোলে চালান
  2. নিশ্চিত করুন যে আউটপুট প্রত্যাশিত ফলাফলের সাথে মিলে যায়
  3. বিভিন্ন ডেটা সেট দিয়ে পরীক্ষা করুন
  4. নিশ্চিত করুন যে আপনার কোড edge cases (খালি অ্যারে, একক উপাদান) পরিচালনা করতে পারে

জমা দেওয়ার নির্দেশিকা

আপনার জমায় অন্তর্ভুক্ত করুন:

  • প্রতিটি অনুশীলনের জন্য ভালোভাবে মন্তব্যযুক্ত জাভাস্ক্রিপ্ট কোড
  • আপনার প্রোগ্রাম চলমান অবস্থার স্ক্রিনশট বা টেক্সট আউটপুট
  • প্রতিটি কাজের জন্য আপনি কোন লুপ টাইপ বেছে নিয়েছেন এবং কেন তার সংক্ষিপ্ত ব্যাখ্যা

রুব্রিক

মানদণ্ড চমৎকার (৩ পয়েন্ট) যথাযথ (২ পয়েন্ট) উন্নতির প্রয়োজন (১ পয়েন্ট)
কার্যকারিতা সমস্ত অনুশীলন সঠিকভাবে সম্পন্ন হয়েছে এবং বোনাস চ্যালেঞ্জ সমস্ত প্রয়োজনীয় অনুশীলন সঠিকভাবে কাজ করে কিছু অনুশীলন অসম্পূর্ণ বা ত্রুটি রয়েছে
কোডের গুণমান পরিষ্কার, সুসংগঠিত কোড এবং বর্ণনামূলক ভেরিয়েবল নাম কোড কাজ করে কিন্তু আরও পরিষ্কার হতে পারে কোড এলোমেলো বা বোঝা কঠিন
মন্তব্য লজিক এবং সিদ্ধান্ত ব্যাখ্যা করে ব্যাপক মন্তব্য মৌলিক মন্তব্য উপস্থিত কম বা কোনো মন্তব্য নেই
লুপ ব্যবহার বিভিন্ন লুপ টাইপের যথাযথ ব্যবহার প্রদর্শন করে লুপ সঠিকভাবে ব্যবহার করা হয়েছে কিন্তু সীমিত বৈচিত্র্য ভুল বা অদক্ষ লুপ ব্যবহার
পরীক্ষা বিভিন্ন পরিস্থিতিতে ব্যাপক পরীক্ষার প্রমাণ মৌলিক পরীক্ষা প্রদর্শিত পরীক্ষার সামান্য প্রমাণ

প্রতিফলন প্রশ্ন

অনুশীলনগুলো সম্পন্ন করার পরে বিবেচনা করুন:

  1. কোন লুপ টাইপ ব্যবহার করা সবচেয়ে স্বাভাবিক মনে হয়েছে এবং কেন?
  2. অ্যারে নিয়ে কাজ করার সময় আপনি কোন চ্যালেঞ্জের সম্মুখীন হয়েছেন?
  3. এই দক্ষতাগুলো বাস্তব জীবনের ওয়েব ডেভেলপমেন্ট প্রকল্পে কীভাবে প্রয়োগ করা যেতে পারে?
  4. যদি আপনাকে পারফরম্যান্সের জন্য আপনার কোড অপ্টিমাইজ করতে হয় তবে আপনি কীভাবে এটি ভিন্নভাবে করবেন?

অস্বীকৃতি:
এই নথিটি AI অনুবাদ পরিষেবা Co-op Translator ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসাধ্য সঠিকতা নিশ্চিত করার চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। নথিটির মূল ভাষায় থাকা আসল সংস্করণকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যার জন্য আমরা দায়ী থাকব না।