493
订阅者
无数据24 小时
+27 天
+230 天
帖子存档
مثال تابع بازگشتی : جمع اعداد از یک تا یک عدد دلخواه
نوشتن یک تابع که جمع دو عدد دلخواه رو حساب کنه کار بسیار ساده ایه کافیه که یک تابع بنویسیم که دو تا عدد رو به عنوان پارامتر بگیره و حاصل جمع رو در قسمت return برگردونه
اما مثلا جمع اعداد از یک تا 10 کار ساده ای نیست در مثال فوق ما از برگشت استفاده کردیم تا این جمع تبدیل به دو جمع ساده بشه
در پست بعدی نشون میدیم که بازگشت در این مثال چطور اجرا می شود؟
#برنامه_نویسی
دوستان عزیز بی زحمت این پستو برسونید به ده تا ❤️ تا مثال هاشو آماده میکنیم
متغیری که خارج از یک تابع تعریف میشود، به عنوان متغیر سراسری (Global Variable) شناخته میشود و در هر جایی از برنامه، چه در توابع (که محدوده محلی شناخته می شوند ) و چه در محدوده سراسری برنامه قابل دسترسی می باشد.
در مثال فوق :
✅ متغیر x خارج از توابع و به صورت سراسری تعریف شده است.
✅ در هر دو تابع main و myFunction میتوان به متغیر x دسترسی داشت و مقدار آن را نمایش داد. و مقدار x در هر دو یکسان است
در این مثال، مفهومی به نام محدوده محلی (Local Scope) را بررسی میکنیم. وقتی یک متغیر داخل یک تابع تعریف میشود، آن متغیر فقط در همان تابع قابل استفاده است و بیرون از تابع قابل دسترسی نیست. به این نوع متغیرها "متغیرهای محلی" میگوییم
🔔🔔🔔توضیح کد:
تعریف تابع myFunction:
داخل این تابع، یک متغیر محلی به نام x تعریف شده است که مقدار آن ۵ است:
int x = 5;سپس با استفاده از دستور cout << x;، مقدار این متغیر چاپ میشود. اجرای تابع myFunction در main: در تابع main، تابع myFunction فراخوانی میشود:
myFunction();وقتی تابع اجرا میشود، مقدار متغیر x که 5 است، در خروجی نشان داده میشود. خروجی: چون متغیر x در محدوده محلی تابع myFunction قرار دارد، فقط در این تابع قابل استفاده است و خارج از آن تابع قابل دسترسی نیست. بنابراین خروجی این برنامه مقدار x یعنی 5 خواهد بود. 🔴🔴🔴🔴نکته:🔴🔴🔴🔴 اگر سعی کنید خارج از تابع myFunction به متغیر x دسترسی پیدا کنید، با خطا مواجه خواهید شد، زیرا این متغیر فقط در محدوده تابع خودش تعریف شده است.
پس از یادگیری تابع واجب است تا رفتار متغیرها را در داخل و خارج از تابع بدانید
دوستان عزیز بی زحمت این پستو برسونید به ده تا ❤️ هر سوالی هم دارید داخل کامنت بنویسید 🌷🌷
یک مثال کاربردی برای درک پارامترها
توضیح کامل کد.
کتابخانههای iostream و string فراخوانی شدهاند که برای ورودی و خروجی و کار با متون استفاده میشوند.
تابعی به نام myFunction تعریف شده است که یک پارامتر از نوع متنی به نام fname میگیرد. داخل این تابع، مقدار fname همراه با کلمه " Mohamadi" چاپ میشود.
در تابع main، تابع myFunction سه بار با مقادیر مختلفی فراخوانی میشود: "ali" "Ahmad", و "sadegh". هر بار که تابع فراخوانی میشود، مقدار داده شده به fname منتقل میشود و در نتیجه، نام فرد به همراه "Mohamadi" چاپ میشود.
پارامترها و آرگومانها(parameters and arguments)
سلام دوستان عزیز شبتون بخیر باشه🌷🌷🌷🌷
اطلاعات میتوانند به صورت پارامتر به توابع ارسال شوند. پارامترها متغیرهایی هستند که داخل تابع عمل میکنند
پارامترها بعد از نام تابع و داخل پرانتزها مشخص میشوند. شما میتوانید هر تعداد پارامتری که میخواهید اضافه کنید، فقط آنها را با کاما از هم جدا کنید:
void functionName(pname1, pname2, pname3) {
// کدی که باید اجرا شود
}
در مثال فوق ، تابع functionName دارای سه پارامتر به نام های pname1, pname2 و pname3 می باشد که هنگام فراخوانی تابع میتوان به آنها مقدار داد.
#برنامه_نویسی❌❌❌نکته بسیار مهم : هیچ وقت تابع تونو بعد از ()main اعلان نکنید، چون باعث خطا می شود.
در مثال ویدیو چون تابع myFunction بعد از ()main اعلان شده است پس برنامه خطا داده است
می توانید مثال داخل ویدئو رو از لینک زیر اجرا کنید
https://www.w3schools.com/cpp/trycpp.asp?filename=demo_functions_err
یک تابع در++C از دو بخش تشکیل شده است:
✅ اعلان (Declaration): نوع بازگشتی تابع، نام تابع، و پارامترها (در صورت وجود)
✅ تعریف (Definition): بدنه تابع (کدی که باید اجرا شود یعنی همان کدی که بین دو آکولاد قرار می گیرد)
❗️❗️❗️❗️نکته: اگر میخواهید تابع مقداری را برگرداند باید نوع آن را قبل نام تابع تعیین کرده و در بدنه تابع باید با return مقداری که میخواهید برگردانده شود را بنویسید
در مثال بالا تابع ()main چون int تعریف شده است، پس در قسمت return مقدار عدد صحیح که در اینجا 0 است برمیگرداند، اگر نوع دیگر برگردانده شود برنامه خطا می دهد
در غیر این صورت از void همانند تابع ()myFunction در مثال بالا استفاده کنید . این کلمه اگر قبل اسم تابع بیاید، یعنی هیچ مقداری را بر نمیگرداند
توابع بلاک هایی از کد هستند که وقتی یک بار تعریف می شوند اجرا نمی شوند و برای اجرا باید آن هارا اصطلاحا به صورت مثال بالا داخل تابع دیگری به نام ()main فرا بخوانید که یک تابع از پیش تعریف شده در ++C برای اجرای برنامه ها است.
برای فراخوانی تابع لازم است ابتدا نام تابع ، سپس پرانتز () و در نهایت علامت ; طبق مثال تصویر نوشته شود
هدف تابع این است که بلاکی از کد را یک بار نوشته و چندین بار در صورت نیاز اجرا کنیم
به جای این که چند بار مجددا دستورات را بنویسیم
برای دسترسی به متغیرهای تعریف شده در استراکچر کافیه نام متغیر استراکچر به همراه نقطه و در آخر نام یکی ازمتغیرها را بنویسید .
به عنوان مثال در اینجا برای اختصاص دادن مقدار به متغیر myNum به صورت زیر عمل کرده :
myStructure.myNum = 1;در خروجی مقدار نمایش داده شده برای myNum ، 1 است
دوستان عزیز بی زحمت ده تا قلب بذارید تا ادامه استراکچر هم تقدیم نگاهتون کنیم🌷🌷
در این مثال همانطور که مشاهده می کنید،داخل متغیر استراکچر myStructure دو نوع متغیر به نام myNum نوع عدد صحیح و متغیر myString نوع رشته یا متنی تعریف شده است
اما این کار در آرایه ممکن نیست
#برنامه_نویسی #سی_پلاس_پلاس
