210 likes | 398 Vues
هدف درس: روش صحیح تولید برنامه + ارتقاء تکنیکهای برنامه نویسی. روش ایجاد برنامه. تعیین نیازمندیهای مسئله تحلیل مسئله (ورودی –خروجی –محدودیت) طراحی الگوریتم –کنترل الگوریتم پیاده سازی الگوریتم (نوشتن کد) تست و کنترل برنامه نگهداری و نوسازی برنامه Fanavin.blogfa.com mfaghihi@pnu.ac.ir
E N D
هدف درس: روش صحیح تولید برنامه+ ارتقاء تکنیکهای برنامه نویسی
روش ایجاد برنامه • تعیین نیازمندیهای مسئله • تحلیل مسئله (ورودی –خروجی –محدودیت) • طراحی الگوریتم –کنترل الگوریتم • پیاده سازی الگوریتم (نوشتن کد) • تست و کنترل برنامه • نگهداری و نوسازی برنامه • Fanavin.blogfa.com • mfaghihi@pnu.ac.ir • fanavin@gmail.com
پردازش دادههاي خروجي دادههاي ورودي روش ایجاد برنامه
- زبان C برای اجرای بسیاری از دستوراتش از توابع کتابخانهای استفاده میکند و بیشتر خصوصیات وابسته به سختافزار را به این توابع واگذار مینماید. • برنامۀ مقصدی که توسط کامپایلرهای C ساخته میشود بسیار فشردهتر و کمحجمتر از برنامههای مشابه در سایر زبانها است. • C++ که از نسل C است، تمام ویژگیهای جذاب C را به ارث برده است. • C++ نسبت به حروف «حساس به حالت» استیعنی A و a را یکی نمیداند • و سرانجام آخرین دلیل استفاده از C++ورود به دنیای C# است.
شروع کار با C++ int main() { return 0; } مثال : اولین برنامه اولین برنامهای که مینویسیم به محض تولد، به شما سلام میکند و عبارت "Hello, my programmer!" را نمایش میدهد: #include <iostream.h> int main() { cout << "Hello, my programmer!\n" ; return 0; }
اولین خط از کد بالا یک «راهنمای پیشپردازنده» است. راهنمای پیشپردازنده شامل اجزای زیر است: • 1- کاراکتر # • 2- عبارت include • 3- نام یک «فایل کتابخانهای» که میان دو علامت <> محصور شده است.
1 – عبارت int که یک نوع عددی در C++ است. 2 – عبارت main که به آن «تابع اصلی» در C++ میگویند. 3 – دو پرانتز () که نشان میدهد عبارت main یک «تابع» است. هر برنامه فقط باید یک تابع main() داشته باشد.
به دو صورت میتوانیم به برنامههای C++ توضیحات اضافه کنیم: • 1 – با استفاده از دو علامت اسلش // : هر متنی که بعد از دو علامت اسلش بیاید تا پایان همان سطر یک توضیح تلقی میشود . • 2 – با استفاده از حالت C : هر متنی که با علامت /* شروع شود و با علامت */ پایان یابد یک توضیح تلقی میشود.
عملگر خروجی علامت << عملگر خروجی در C++ نام دارد (به آن عملگر درج نیز میگویند). یک «عملگر» چیزی است که عملیاتی را روی یک یا چند شی انجام میدهد. عملگر خروجی، مقادیر موجود در سمت راستش را به خروجی سمت چپش میفرستد. به این ترتیب دستور cout<< 66 ; مقدار 66 را به خروجی cout میفرستد که cout معمولا به صفحهنمایش اشاره دارد. در نتیجه مقدار 66 روی صفحه نمایش درج میشود.
لیترالها و کاراکترها یک «لیترال» رشتهای از حروف، ارقام یا علایم چاپی است که میان دو علامت نقل قول " " محصور شده باشد. یک «کاراکتر» یک حرف، رقم یا علامت قابل چاپ است که میان دونشانۀ ' 'محصور شده باشد. پس 'w' و '!' و '1' هر کدام یک کاراکتر است. به تفاوت سه موجودیت «عدد» و «کاراکتر» و «لیترال رشتهای» دقت کنید: 6 یک عدد است، '6' یک کاراکتر است و "6" یک لیترال رشتهای است.
نحو اعلان یک متغیر type name initializer دستور زیر تعریف یک متغیر صحیح را نشان میدهد: int n = 50;
متغيرها قوانين نامگذاري متغيرها: • حروف ‘a’ تا ‘z’ ، ‘A’ تا ‘Z’ ، ارقام و ‘_’ • اولين کاراکتر رقم نباشد. • کلمات کليدي نميتوانند نام متغير باشند.
C++ استاندارد اكنون شامل 74 كلمۀ كليدي است:
مقداردهی اولیه به متغیرها در بسیاری از موارد بهتر است متغیرها را در همان محلی که اعلان میشوند مقداردهی کنیم. استفاده از متغیرهای مقداردهی نشده ممکن است باعث ایجاد دردسرهایی شود. دردسر متغیرهای مقداردهی نشده وقتی بزرگتر میشود که سعی کنیم متغیر مقداردهی نشده را در یک محاسبه به کار ببریم. مثلا اگر x را که مقداردهی نشده در عبارت y = x + 5; به کار ببریم، حاصل yغیر قابل پیشبینی خواهد بود. برای اجتناب از چنین مشکلاتی عاقلانه است که متغیرها را همیشه هنگام تعریف، مقداردهی کنیم. مثال: int x=45; int y=0;
ثابتها در بعضی از برنامهها از متغیری استفاده میکنیم که فقط یک بار لازم است آن را مقداردهی کنیم و سپس مقدار آن متغیر در سراسر برنامه بدون تغییر باقی میماند. مثلا در یک برنامۀ محاسبات ریاضی، متغیری به نام PI تعریف میکنیم و آن را با 3.14 مقداردهی میکنیم و میخواهیم که مقدار این متغیر در سراسر برنامه ثابت بماند. در چنین حالاتی از «ثابتها» استفاده میکنیم. یک ثابت، یک نوع متغیر است که فقط یک بار مقداردهی میشود و سپس تغییر دادن مقدار آن در ادامۀ برنامه ممکن نیست. تعریف ثابتها مانند تعریف متغیرهاست با این تفاوت که کلمه کلیدی const به ابتدای تعریف اضافه میشود.
مثال تعریف ثابتها: int main() { // defines constants; has no output: const char BEEP ='\b'; const int MAXINT=2147483647; const float DEGREE=23.53; const double PI=3.14159265358979323846 return 0; } برنامه فوق خروجی ندارد:
عملگر ورودی برای این که بتوانیم هنگام اجرای برنامه مقادیری را وارد کنیم از عملگر ورودی >> استفاده میکنیم. استفاده از دستور ورودی به شکل زیر است: cin >>variable; variable نام یک متغیر است.
مثال 10 – 1 استفاده از عملگر ورودی برنامۀ زیر یک عدد از کاربر گرفته و همان عدد را دوباره در خروجی نمایش میدهد: int main() { // reads an integer from input: int m; cout << "Enter a number: "; cin >> m; cout << "your number is: " << m << endl; return 0; } Enter a number: 52 your number is: 52
عملگر ورودی نیز مانند عملگر خروجی به شکل جریانی رفتار میکند. یعنی همان طور که در عملگر خروجی میتوانستیم چند عبارت را با استفاده از چند عملگر << به صورت پشت سر هم چاپ کنیم، در عملگر ورودی نیز میتوانیم با استفاده از چند عملگر >> چند مقدار را به صورت پشت سر هم دریافت کنیم. مثلا با استفاده از دستور: cin >> x >> y >> z; سه مقدار xو y و z به ترتیب از ورودی دریافت میشوند. برای این کار باید بین هر ورودی یک فضای خالی (space) بگذارید و پس از تایپ کردن همۀ ورودیها، کلید enter را بفشارید.