تابع بازگشتی در برنامه نویسی C

تابع بازگشتی در برنامه نویسی C

در این آموزش شیوه نوشتن توابع بازگشتی در برنامه نویسی C را به کمک مثال یاد خواهید گرفت.

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

 


برنامه نویسی شبکه معماری کامپیوتر هوش مصنوعی و تجاری

توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار! 


 

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

void recurse()

{

… .. …

recurse(); // فراخوانی تابع داخل خود تابع

… .. …

}

int main()

{

… .. …

recurse();

… .. …

}

تابع بازگشتی بازگشت زمانی متوقف می شود که یک شرط (ها) برقرار شودف به این شرط، شرط توقف می گویند.

برای جلوگیری از بازگشت نامحدود در بیشتر مواقع از دستور if…else استفاده می شود. این دستور جایی نوشته می شود که یک مسیر فراخوانی بازگشتی است و دیگری نه.

مثال: مجموع اعداد طبیعی با استفاده از تابع بازگشتی

#include <stdio.h>

int sum(int n);

int main() {

int number, result;

printf(“Enter a positive integer: “);

scanf(“%d”, &number);

result = sum(number);

printf(“sum = %d”, result);

return 0;

}

int sum(int n) {

if (n != 0)

// خود را فراخوانی می کند sum() تابع

return n + sum(n-1);

else

return n;

}

خروجی

Enter a positive integer:3

sum = 6

ابتدا تابع ()sum درون تابع ()main با ارسال آرگومانnumber  فراخوانی می شود.

فرض کنید کاربر عدد ۳ را وارد می کند و این مقدار در اولین فراخوانی در پارامتر n تابع ()sum قرار می گیرد. با فراخوانی بعدی تابع درون خود تابع، n-1 یعنی عدد ۲ به تابع ()sum ارسال می شود. این روند ادامه می یابد تا n برابر با ۰ شود.

وقتی n برابر با ۰ شد، شرط if برقرار نیست و قسمت else اجرا می شود. در نهایت مجموع اعداد صحیح به تابع ()main برگردانده می شود.

تابع بازگشتی در برنامه نویسی C مزایا و معایب بازگشت

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

همانطور که گفته شد بازگشت یک مفهوم مهم است و اغلب در ساختار داده ها و الگوریتم ها استفاده می شود. به عنوان مثال معمولاً از بازگشت در مسائلی مانند پیمایش درخت ها استفاده می شود.

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in,

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

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

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

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست