কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে রিকার্সিভ লুপ দিয়ে ইনভার্টেড কাউন্ট প্রিন্ট করা


সমস্যা বিবরণ

একটি রিকার্সিভ ফাংশন লিখতে হবে যা একটি নম্বর নেবে এবং ০ থেকে সেই নম্বর পর্যন্ত রিভার্স কাউন্ট প্রিন্ট করবে। শুধু রিকার্সন ব্যবহার করতে হবে।

সমাধান

const recursiveLoop = (counter) => {
  if (counter > 0) {
    recursiveLoop(counter - 1);
  }
  console.log(counter);
  return counter;
};

recursiveLoop(5);
recursiveLoop(15);
recursiveLoop(25);

আউটপুট

0 1 2 3 4 5
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

ব্যাখ্যা

  • বেস কেস: counter > 0 হলে রিকার্সিভ কল।
  • রিকার্সিভ কল শেষ হলে (স্ট্যাক আনਵাইন্ড হলে) console.log(counter) এক্সিকিউট হয়।
  • এই কারণে ০ থেকে শুরু করে আসল কাউন্টার পর্যন্ত প্রিন্ট হয়।

সতর্কতা

বড় নম্বরের জন্য স্ট্যাক ওভারফ্লো হতে পারে (JS কল স্ট্যাক লিমিট ~১০-১৫ হাজার)।

  1. JavaScript-এ For Loops: ক্লাসিক, for...in এবং for...of

  2. জাভাস্ক্রিপ্টে for...of লুপ ব্যাখ্যা

  3. জাভাস্ক্রিপ্টে লুপে ডিলে যোগ করা

  4. জাভাস্ক্রিপ্টে ফাংশনাল প্রোগ্রামিং-এ লুপ কন্টিনিউ করা