تست هوش با بازی اعداد شروع شد. از مسابقه جا نمونی 😀

اینجا کلیک کن
بریم برای شروع

توابع بازگشتی (Recursive Functions) - آزمون آنلاین جاوا اسکریپت

تعداد سوال 12
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد

به دنیای جذاب و گاهی اوقات گیج‌کننده توابع بازگشتی در جاوااسکریپت خوش اومدی. این یک آزمون در مورد این مفهوم مهم و کاربردیه که قراره بهت کمک کنه تا درک بهتری ازش پیدا کنی. اگه دوست داری بدونی توابع بازگشتی چطور کار می‌کنن، کجا به دردت می‌خورن و چطور باید باهاشون کنار بیای، این آزمون رو از دست نده.

توابع بازگشتی (Recursive Functions) - آزمون آنلاین جاوا اسکریپت

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


چرا از توابع بازگشتی استفاده می‌کنیم؟

شاید اولش فکر کنی که خب چرا وقتی می‌تونم از حلقه‌ها مثل for یا while استفاده کنم، برم سراغ توابع بازگشتی؟ جواب اینه که گاهی اوقات، راه‌حل‌های بازگشتی کد رو خیلی تمیزتر و ساده‌تر می‌کنن، به خصوص وقتی با ساختارهای داده‌ای مثل درخت‌ها یا گراف‌ها سر و کار داریم.

توابع بازگشتی بیشتر توی این زمینه‌ها به کار میان:

  • پیمایش درخت (Tree Traversal): برای پیدا کردن یا پردازش گره‌ها توی ساختار درختی.
  • الگوریتم‌های جستجو (Search Algorithms): مثل جستجوی عمقی (Depth-First Search) که توی گراف‌ها استفاده می‌شه.
  • الگوریتم‌های مرتب‌سازی (Sorting Algorithms): مثل Quicksort و Mergesort که مسئله رو به زیرمسئله‌های کوچکتر تقسیم می‌کنن.

نمونه‌هایی از توابع بازگشتی

یکی از مثال‌های کلاسیک برای توابع بازگشتی، محاسبه فاکتوریل یک عدده. فاکتوریل عدد 5 یعنی 5 ضربدر 4 ضربدر 3 ضربدر 2 ضربدر 1. اینجا می‌تونیم ببینیم که چطور تابع خودش رو برای محاسبه فاکتوریل عدد کوچکتر صدا می‌زنه.


function factorial(n) {
if (n === 0) {
return 1; // حالت پایه
} else {
return n * factorial(n - 1); // فراخوانی بازگشتی
}
}
console.log(factorial(5)); // خروجی: 120

مثال دیگه، تابع countdown برای شمارش معکوسه.


function countdown(n) {
if (n < 0) {
return; // حالت پایه
}
console.log(n);
countdown(n - 1); // فراخوانی بازگشتی
}
countdown(3);

خروجی این کد به ترتیب اعداد 3، 2، 1 و 0 رو در کنسول نشون می‌ده.


جدول مقایسه: توابع بازگشتی در برابر حلقه‌ها

برای اینکه بهتر با تفاوت‌های این دو روش آشنا بشی، این جدول رو برات آماده کردم:

ویژگی توابع بازگشتی حلقه‌ها (Loops)
خوانایی کد معمولاً برای مسائل پیچیده و ساختارهای درختی خواناتر است. برای مسائل ساده‌تر و تکرارهای مشخص، خواناتر است.
مصرف حافظه به خاطر استفاده از Call Stack، حافظه بیشتری مصرف می‌کند. حافظه کمتری مصرف می‌کند.
پیچیدگی برای مبتدی‌ها ممکنه پیچیده به نظر بیاد. یادگیری و درک آن ساده‌تر است.

سوالات این آزمون چه چیزهایی رو بررسی می‌کنن؟

با شرکت در این کوییز می‌تونی میزان مهارت و تسلط خودت رو درباره توابع بازگشتی در جاوااسکریپت بسنجی و همزمان اطلاعات خوبی در مورد این موضوع به دست بیاری. سوالات این آزمون در مورد توابع بازگشتی هستن و بخش‌های مختلفی رو پوشش می‌دن.

مثلاً یک سوال ممکنه ازت بپرسه حالت پایه (Base Case) در یک تابع بازگشتی چیست یا یک سوال دیگه ممکنه یک قطعه کد بهت بده و بگه خروجی اون چیه.

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

خب، برای شروع آماده‌ای؟

بیا و دانش خودت رو بسنج!

تعداد سوال 12
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد
معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای کیو بالای 100

معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای...

طبق معمول هر روز صبح ساعت 8 ، باز هم یک پازل عددی و حروفی سخت داریم. پازل...

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این کیفه می تونی رمزش رو پیدا کنی ؟

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این...

خوب یک معمای واقعا سخت که حل کردنش کار آسونی نیست . در این معما یک رمز قوی...

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی با اعداد - تست هوش

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی...

یه بازی ساده براتون آوردم که در عین سادگی نیاز به هوش هم داره. کافیه طبق راهنما عدد...

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب کلیک کن

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب...

به نظر ساده میاد نه؟‌ ولی انقدرها هم که فکر می کنی ساده نیست . مخصوصا وقتی که...

تمدید پاسپورت بدون کارت پایان خدمت

تمدید پاسپورت بدون کارت پایان خدمت

بسیاری از جوانان و مشمولان نظام وظیفه با موضوع تمدید پاسپورت بدون کارت پایان خدمت درگیرند؛ به‌خصوص کسانی...

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

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

برای اینکه بتوانید بهترین جراح عمل بینی در تهران را پیدا کنید، ابتدا باید هدف خود از عمل...

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه ای «SMS by Region» یک روش های رایج تبلیغات منطقه ای هدفمند است که برای...

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پیدا کردن یک منبع مطمئن برای پخش عمده پارچه فاستونی همیشه...

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک مرغ" خوشمزه

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک...

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک مرغ" خوشمزه آموزش دستورپخت و...

تست آنلاین عینک روی صورت شما در صاپتیک استور

تست آنلاین عینک روی صورت شما در صاپتیک استور

آیا تا بحال اتفاق آفتاده که یک عینک آفتابی مردانه بسیار شیک در اینترنت ببینید ولی بخاطر اینکه...

قوانینی که پیش از سفر به تایلند باید بدانید

قوانینی که پیش از سفر به تایلند باید بدانید

تایلند به عنوان یکی از آزادترین مقاصد توریستی جهان شناخته می‌شود، اما این بدان معنا نیست که هیچ...

تعبیر خواب اینکه گوسفندی به دنبال من افتاده و می خواهد به من حمله کند

تعبیر خواب اینکه گوسفندی به دنبال من افتاده و می خواهد به من...

تعبیر خواب گوسفند که دنبال من می دود در تفاسیر اسلامی، دویدن گوسفند به دنبال فرد ممکن است...