محاسبه فاکتوریل با تابع بازگشتی در جاوا اسکریپت

تِندایو محصول جدید وب سایت پلتفرم بوی است که به میلیون ها پرسش دسته های مختلف حوزه فناوری دیجیتال پاسخ داده است. اعلامیه حریم خصوصی تِندایو - همچنین در انتهای همین صفحه از میزان رضایت خود از پاسخ ربات هوش مصنوعی تندایو را اعلام بفرمایید.

برای شروع پرسش جدید از این لینک اقدام کنید.

💬سوال: چگونه می‌توان یک تابع بازگشتی برای محاسبه فاکتوریل عدد ورودی در جاوا اسکریپت نوشت؟

برای نوشتن تابع بازگشتی محاسبه فاکتوریل در جاوا اسکریپت، می توانید از کد زیر استفاده کنید:

function factorial(num) {
  if (num === 1) {
    return 1;
  } else {
    return num * factorial(num - 1);
  }
}

// مثال
console.log(factorial(5)); // 120

توضیح کد:

  • تابع factorial یک عدد (num) را به عنوان ورودی دریافت می کند.
  • داخل تابع، یک شرط پایه وجود دارد که بررسی می کند آیا num برابر با 1 است یا خیر.
  • اگر num برابر با 1 باشد، تابع 1 را به عنوان نتیجه باز می گرداند.
  • در غیر این صورت، تابع num را در factorial(num - 1) ضرب می کند و نتیجه را باز می گرداند.
  • در واقع، تابع factorial خود را به صورت بازگشتی صدا می زند تا فاکتوریل اعداد کوچکتر را محاسبه کند.
  • در نهایت، حاصلضرب اعداد از 1 تا num به عنوان فاکتوریل num محاسبه و بازگردانده می شود.

نکات:

  • توابع بازگشتی برای حل مسائلی که به طور طبیعی به زیرمسائل کوچکتر تقسیم می شوند، مناسب هستند.
  • در استفاده از توابع بازگشتی باید مراقب باشید تا از حلقه بی نهایت جلوگیری کنید.
  • برای جلوگیری از حلقه بی نهایت، باید یک شرط پایه در تابع وجود داشته باشد که در آن تابع خود را صدا نزند.

مثال های دیگر:

  • محاسبه دنباله فیبوناچی
  • محاسبه توان
  • پیمایش در درخت

هرچه بیشتر بدانید بهتر است🔸⚡❔❕

tendaiwo

تِندایو، پرسش از دنیای آی تی

خیلی سوالات زیادی داریم که باید به همه آنها پاسخ داده شود.سوالاتی بسیاری در زمینه نرم افزار، سخت افزار،سایت، سئو، برنامه نویسی و ... که تِندایو جوابشان را میداند.

"تندایو" (Tendaiwo) که به معنی "حرکت به سوی پیشرفت" در زبان شونا، یکی از زبان‌های محلی زیمبابوه است، یکی از اسامی آفریقایی با معنی بسیار جالب است. این نام، نشان دهنده روحیه‌ی پیشرفت، بهبود و تلاش در زندگی است.با بیشتر دانستن، تلاش کنید و به خواسته هایتان برسید.

شما هم میتوانید سوالتان را بپرسید تا پس از پاسخ دهی توسط تندایو در دسته موردنظر ثبت شود.برای ورود به بخش اصلی میتوانید بر روی دکمه زیر کلیک کنید.

تِندایو، پرسش از دنیای آی تی

آیا این مطلب برای شما مفید بود؟

بله
نه اصلا
از اینکه بازخورد خود را در اختیار ما گذاشته اید متشکریم. تا بعد 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *