لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 24 صفحه
قسمتی از متن .doc :
توابع :
دربرنامه های طولانی وپیچیده که شامل چندین بخش منطقی ومستقل از هم هستند ، بهتر است برای هرقسمت منطقی ، برنامه جداگانه ای نوشته شود .
برنامه هایی که برای هر یک از بخش نوشته می شود ، تابع نام دارد درواقع تابع ، برنامه ای است که برای حل بخشی از مسئله نوشته می شود .
توابع کتابخانه ای :
تعدادی از توابع که دراغلب برنامه ها مورد استفاده قرارمی گیرند و کاربرد زیادی دارند ، از قبل نوشته شده ، به همراه کامپایلر C++ ارائه می شوند که به آنهاتوابع کتابخانه ای گویند مثل تابع clrsc() که صفحه نمایش را پاک می کند .
برحسب ضرورت می توان توابعی را بنویسید ودر برنامه مورد استفاده قرار داد .
بااستفاده از توابع می توان برنامه های ساخت یافته نوشت وظایف این نوع برنامه ها توسط بخش های مستقلی که تشکیل دهنده برنامه اند انجام می شود .
این بخش ها ی مستقل همان توابع هستند امتیازات برنامه نویسی ساخت یافته عبارتند از 1- نوشتن برنامه های ساخت یافته آسان است 2- همکاری بین افراد رافراهم می کند 3- اشکال زدایی برنامه های ساخت یافته ساده تر است 4- برنامه نویس ساخت یافته موجب صرفه جویی در وقت می شود .
نوشتن تابع
برای نوشتن تابع باید اهداف تابع مشخص باشد تابع چه وظیفه ای به عهده دارد ،ورودی های تابع چیست ، وخروجی های تابع کدامند با دانستن این موارد نوشتن تابع چندان دشوار نیست .
هر تابع دارای سه جنبه است ،1- جنبه تعریف تابع : که مجموع ای از دستورات است که عملکرد تابع را مشخص می کند 2- جنبه فراخوانی تابع دستوری است که تابع را فراخوانی می کندفراخوانی تابع بانام آن انجام می شود 3- جنبه اعلان .
نکاتی درمورد نوشتن تابع :
1- ابتدا بدون پرداختن به جزئیات پیاده سازی توابع ، آرگومانها ونتیجه ای را که ازتابع انتظار دارید ،مشخص کرده ،برنامه اصلی را بنویسید به عبارت دیگر درقدم اول لازم نیست با جزئیات پیاده سازی تابع بپردازید پس ازنوشتن برنامه اصلی ، توابع دیگر را بنویسید 2- توابع را طوری طراحی وپیاده سازی کنید که هرتابع فقط به آنچه که نیاز دارد دسترسی داشته باشد وبقیه قسمتهای برنامه وسایر اطلاعات توسط توابع غیرمرتبط قابل دستیابی نباشد این موضوع را پنهان سازی اطلاعات گویند برای این منظور ، هرتابع باید یک نقطه ورود ویک نقطه خروج داشته باشد .
3- برای ارتباط بین توابع ، ازآرگومان ها وپارامترها استفاده کنید .
چگونگی کار تابع :
وقتی تابعی ،توسط تابع دیگری فراخوانی می شود ، دستورات آن تابع اجرا می شوند پس از اجرای دستورات تابع ،کنترل اجرای برنامه ، به برنامه فراخوانی بر می گردد ، پس ازبرگشت ازتابع فراخوانی شده ، اولین دستور بعداز فراخوانی تابع ( درتابع فراخوانی ) اجرامی شود .
روش های ارسال پارامترها به توابع :
پارامترها را به دوطریق می توان ازتابع فراخوانی شونده ارسال کرد . این دوروش عبارت اند از 1- روش فراخوانی بامقدار 2- روش فراخوانی با ارجاع .
روش فراخوانی ، تعداد مقادیری رامشخص می کندکه توابع فراخوانی شونده می توانند بر گردانند در روش فراخوانی بامقدار ، دو دسته توابع می توانند وجود داشته باشد 1- توابعی که هیچ مقداری رابر نمی گردانند 2- توابعی که فقط یک مقدار را برمی گردانند اما در روش فراخوانی باارجاع توابع می توانند چندین مقدار را به تابع فراخوان برگردانند .
توابعی که هیچ مقداری را برنمی گردانند :
ممکن است در برنامه ای
توابعی که هیچ مقداری را بر نمی گردانند
ممکن است دربرنامه از توابعی استفاده کنیم که آن توابع پس از فراخوانی ، عملیات مورد نظر را انجام دهند و خروجی های مورد انتظار راتولید وچاپ نمایند وهیچ مقداری را به تابع فراخوان تحویل ندهند . دربسیاری از مسئله هایی که با کامپیوتر حل می شوند ، این گونه توابع به چشم می خورند .
توابعی که یک مقدار را بر می گردانند
در بسیاری از مسئله هایی که توسط کامپیوتر حل می شوند ، نیاز به نوشتن توابعی است که یک مقدار را بر می گردانند .
مثل تابع Sin () که سینوس یک زاویه رابر می گرداند . اینگونه ، توابع کاربردهای فراوانی دارند . برای نوشتن اینگونه توابع ، نوع آنها رابا ید در الگوی تابع وعنوان تابع مشخص کرد برای برگرداندن مقداری توسط تابع ، ازدستور return به صورت های زیر استفاده میشود :
،(> عبارت <) return
؛ >عبارت< return
تفاوتی بین دورش کاربرد return وجودندارد مقداری که توسط دستور returnبرگشت داده می شود درنام تابع قرارمی گیرددربرنامه فراخوان ، می توان نام تابع را به متغیری نسبت داد وازمحتویات آن استفاده کرد. به عنوان مثال اگر ، f1() یک تابع از نوع x,int متغیری از نوع int باشد ، دستورزیر ، تابع f1() رافراخوانی کرده ، مقداری را که توسط دستور return در نام تابع قرارمی گیرد ، در x قرار می دهد .
بازگشتی
بازگشتی به مفهومی گفته می شود که در آن ، تابعی خودش را فراخوانی می کند . توابع می توانند به طور مستقیم یا غیر مستقیم خودشان رافراخوانی کنند . درروش مستقیم ، یکی ازدستورات تابع ، فراخوانی خودش است در روش غیر مستقیم ، تابعی مثل f1() تابع f2() رافراخوانی می کند وتابع f2() نیز به نوبه خود تابع f1() را فرا خوانی می نماید برای ایجاد بازگشتی ، الگوریتمی که توسط تابع پیاده سازی می شود ، باید خصوصیت بازگشتی داشته باشد .
طرح کلی الگوریتم های بازگشتی به صورت زیر است :
یک یا چند حالت ، که در آن ، تابع وظیفه خودش را به صورت بازگشتی انجام می دهد . یعنی این حالت ها خاصیت بازگشتنی دارند .
یک یا چندحالت که در آن ، تابع وظیفه خودش را بدون فراخوانی بازگشتنی انجام می دهد . این حالت را حالت توقف گویند .
اغلب با استفاده از یک دستور if مشخص می شود که کدام یک از این حالت ها باید انجام شوندبرای این که فراخوانی های بازگشتی به اتمام برسد . باید حالت توقف اتفاق بیفتد . یعنی هر فراخوانی تابع ، سرانجام باید به حالت توقف ختم شود ، در غیر این صورت ، فراخوانی تابع خاتمه نمی یابد .