21
ه م ا رن ب د ی ل و ت ح ی ح ص درش: روش هدف ه م ا رن ب د ی ل و ت ح ی ح ص درش: روش هدف+ + ی س ی و ت ه م ا رن ب های ک ی ن ک ن اء ق ت ار ی س ی و ت ه م ا رن ب های ک ی ن ک ن اء ق ت ار

هدف درس: روش صحیح تولید برنامه + ارتقاء تکنیکهای برنامه نویسی

Embed Size (px)

DESCRIPTION

هدف درس: روش صحیح تولید برنامه + ارتقاء تکنیکهای برنامه نویسی. روش ایجاد برنامه. تعیین نیازمندیهای مسئله تحلیل مسئله (ورودی –خروجی –محدودیت) طراحی الگوریتم –کنترل الگوریتم پیاده سازی الگوریتم (نوشتن کد) تست و کنترل برنامه نگهداری و نوسازی برنامه Fanavin.blogfa.com [email protected] - PowerPoint PPT Presentation

Citation preview

Page 1: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

هدف درس: روش صحیح هدف درس: روش صحیح تولید برنامهتولید برنامه

++ ارتقاء تکنیکهای برنامه ارتقاء تکنیکهای برنامه

نویسینویسی

Page 2: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

روش ایجاد برنامهروش ایجاد برنامه

تعیین نیازمندیهای مسئلهتعیین نیازمندیهای مسئله•تحلیل مسئله )ورودی –خروجی –محدودیت(تحلیل مسئله )ورودی –خروجی –محدودیت(•طراحی الگوریتم –کنترل الگوریتمطراحی الگوریتم –کنترل الگوریتم•پیاده سازی الگوریتم )نوشتن کد(پیاده سازی الگوریتم )نوشتن کد(•تست و کنترل برنامهتست و کنترل برنامه•نگهداری و نوسازی برنامهنگهداری و نوسازی برنامه••Fanavin.blogfa.comFanavin.blogfa.com•[email protected][email protected]@gmail.com

Page 3: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

برنامه ایجاد برنامه روش ایجاد روش

پردازش

داده هاي ورودي داده هاي خروجي

Page 4: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

کامپایلرهای توسط که مقصدی کامپایلرهای برنامۀ توسط که مقصدی و CCبرنامۀ فشردهتر بسیار میشود و ساخته فشردهتر بسیار میشود ساخته. است زبانها سایر در مشابه برنامههای از .کمحجمتر است زبانها سایر در مشابه برنامههای از کمحجمتر

CC++++ ل س ن ز ا ل که س ن ز ا ب CCکه ا ذ ج ی ا ه ی گ ژ ی و م ا م ت ، ت س ب ا ا ذ ج ی ا ه ی گ ژ ی و م ا م ت ، ت س ا CCا ا ر رت س ا ه د ر ب ث ر ا ه ت ب س ا ه د ر ب ث ر ا ه .. ب

C++ »نسبت به حروف »حساس به حالت را یکی نمی داندa و Aیعنی است

ز ا ه د ا ف ت س ا ل ی ل د ن ی ر خ آا م ا ج ن ا ر س ز و ا ه د ا ف ت س ا ل ی ل د ن ی ر خ آا م ا ج ن ا ر س ی ++++CCو ا ی ن د ه ب د و ر ی و ا ی ن د ه ب د و ر وCC##. ت س .ا ت س ا

-ن ا ب ن- ز ا ب ع CCز ب ا و ت ز ا ش ت ا ر و ت س د ز ا ی ر ا ی س ب ی ا ر ج ا ی ا ر ع ب ب ا و ت ز ا ش ت ا ر و ت س د ز ا ی ر ا ی س ب ی ا ر ج ا ی ا ر بت ا ی ص و ص خ ر ت ش ی ب و د کن ی م ه د ا ف ت س ا ی ا ه ن ا خ ب ا ت کت ا ی ص و ص خ ر ت ش ی ب و د کن ی م ه د ا ف ت س ا ی ا ه ن ا خ ب ا کت . د ی ا م ن ی م ر ا گذ ا و ع ب ا و ت ن ی ا ه ب ا ر ر ا ز ف ا ت خ س ه ب ه ت س ب ا . و د ی ا م ن ی م ر ا گذ ا و ع ب ا و ت ن ی ا ه ب ا ر ر ا ز ف ا ت خ س ه ب ه ت س ب ا و

Page 5: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

++++CCشروع کار با شروع کار با int mainint main)()(

{{

return 0return 0;;}}

عبارت و می کند سالم شما به تولد، محض به می نویسیم که برنامه ای اولین"Hello, my programmer"!: می دهد نمایش را

#include <iostream.h<int main)(

{cout << "Hello, my programmer!\n; "

return 0;}

برنامه :مثال اولین

Page 6: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

راهنمای راهنمای اولین خط از کد باال یک »اولین خط از کد باال یک »« است. راهنمای « است. راهنمای ههپیش پردازندپیش پردازند

پیش پردازنده شامل اجزای زیر است:پیش پردازنده شامل اجزای زیر است:11 - - کاراکتر کاراکتر##22-- عبارت عبارت includeinclude33-- نام یک »فایل کتابخانه ای« که میان دو نام یک »فایل کتابخانه ای« که میان دو

عالمت >< محصور شده است. عالمت >< محصور شده است.

Page 7: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

ت – 1 ر ا ب ر intع د ی د د ع ع و ن ک ی . ++Cکه ت س ا

ت –2 ر ا ب « mainع ر » د ی ل ص ا ع ب ا ت ن آا ه ب ++Cکه. د ن ی گو ی م

پرانتز – 3 ت )(دو ر ا ب ع د ه د ی م ن ا ش ن ب »mainکه ا ت ک « عی . ت س ا

هر برنامه فقط باید یک تابع main)(داشته باشد .

Page 8: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

توضیحات توضیحات ++++CCبه دو صورت می توانیم به برنامه های به دو صورت می توانیم به برنامه های

اضافه کنیم:اضافه کنیم:

1 لشdتفاده از دو عالمت اسdا اسdب – // : dلشddمت اس dو عالdاز دd دddبعd هddک dنیddمتd dرddهبیایdد تdاd پایdان dهمdاdن سdطرd یdک تdوضdیح

.تلقی می شود 2 التdتفاده از حdا اسdب – C هdنی کdر متdه :

d المتdع dاdالمت /*بdعd اdو بd ودdش dروعdش /* پایdان یابد یdک توضdیdح تdلقdی مdی شود.

Page 9: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

عملگر خروجیعملگر خروجی نdام دارد )بdه ++C عملگdر خdروجی در >>عالمت

آن عملگر درج نیز می گویند(. یک »عملگر« چیزی است که عملیاتی را

روی یک یا چند شی انجام می دهد. عملگر خروجی، مقادیر موجود در سمت راستش

را به خروجی سمت چپش می فرستد.به این ترتیب دستور

cout>> 66 ;

می فرس=تد ک=ه cout را ب=ه خ=روجی 66مق=دار cout .معم=وال ب=ه ص=فحه نمایش اش=اره دارد

روی ص=فحه نم=ایش درج 66در نتیج=ه مق=دار می شود.

Page 10: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

لیترال ها و کاراکترهالیترال ها و کاراکترها« رشddته ای از حddروف، ارقddام یddا عالیم لیddترالیک »

"چddاپی اسddت کddه میddان دو عالمت نقddل قddول " محصور شده باشد.

« یdک حdرف، رقم یdا عالمت قابdل چdاپ کdاراکتریک » tانۀdان دونشdه میdت کdاس ' محصdور شdده باشdد. '

هر کدام یک کاراکتر است. '1' و '!' و 'w'پس

به تفddاوت سddه موجddودیت »عddدد« و »کddاراکتر« و '6' یdک عdدد اسdت، 6»لیdترال رشdته ای« دقت کنیdد:

یک لیترال رشته ای است."6"یک کاراکتر است و

Page 11: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

نحو اعالن یک متغیرtype name initializer

دستور زیر تعریف یک متغیر صحیح را نشان می دهد:

int n = 50;

Page 12: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

متغيرهامتغيرها

قوانين نامگذاري متغيرها:قوانين نامگذاري متغيرها: حروف حروف‘‘aa’’ تا تا ‘‘z’z’ ، ، ‘‘AA’’ تا تا ‘‘ZZ’’ ، ،

‘_’‘_’ارقام و ارقام و .اولين کاراکتر رقم نباشد.اولين کاراکتر رقم نباشد کلمات کليدي نمي توانند نام کلمات کليدي نمي توانند نام

متغير باشند.متغير باشند.

Page 13: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

and and_eq asm

auto bitand Bitor

bool break case

catch char class

compl const const_cast

continue default delete

dodouble dynamic_cast else

enum explicit export

extern dfalse float

for friend goto

C++ 74 اس==تاندارد اكن==ون ش==امل كلمۀX كليدي است:

Page 14: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

if inline int

long mutable namespace

new not not_eq

operator or or_eq

privat eprotected public

register reinterpret_cast return

short signed sizeof

static static_cast struct

swich template this

throw TRUE try

Page 15: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

typedef typoid typename

using union unsigned

virtual void volatile

wchar_t while xor

xor_eq

Page 16: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

مقداردهی اولیه به متغیرهامقداردهی اولیه به متغیرهادر بسdیاری از مdوارد بهdتر اسdت متغیرهdا را در همdان محلی کdه اعالن می شdوند مقdداردهی کdنیم. اسdتفاده از متغیرهdای مقddداردهی نشddده ممکن اسddت بddاعث ایجddاد دردسddرهایی

شود. دردسdر متغیرهdای مقdداردهی نشdده وقdتی بزرگ تdر می شdود کdه سdعی کdنیم متغdیر مقdداردهی نشdده را در یdک محاسdبه بdه

= y را که مقداردهی نشده در عبارت xکار ببریم. مثال اگر x + 5 ; لdبریم، حاصdار بdه کdبy دdنی خواهdل پیش بیdیر قابdغ

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

مثال: int x=45; int y=0;

Page 17: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

ثابت هاثابت ها

در بعضdی از برنامه هdا از متغdیری اسdتفاده می کdنیم کdه فقdط یdک بdار الزم اسddت آن را مقddداردهی کddنیم و سddپس مقddدار آن متغddیر در tۀddک برنامddد. مثال در یddاقی می مانddیر بddدون تغیddه بddر برنامddسراس

3.14 تعریdف می کdنیم و آن را بdا PIمحاسdبات ریاضdی، متغdیری بdه نdام مقdداردهی می کdنیم و می خdواهیم کdه مقdدار این متغdیر در سراسdر

« استفاده می کنیم. ثابت هابرنامه ثابت بماند. در چنین حاالتی از » اسddت کddه فقddط یddک بddار متغddیر، یddک نddوع ثddابتیک

مقddداردهی می شddود و سddپس تغیddیر دادن مقddدار آن در ادامۀt برنامه ممکن نیست.

تعریف ثابت ها مانند تعریف متغیرهاست با این تفاوت به ابتدای تعریف اضافه می شود. constکه کلمه کلیدی

Page 18: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

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;{

: خروجی نداردفوقبرنامه

:مثال تعریف ثابت ها

Page 19: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

عملگر ورودیعملگر ورودی

را مقادیری برنامه اجرای هنگام بتوانیم که این برایورودی عملگر از کنیم . <<وارد می کنیم استفاده

استفاده از دستور ورودی به شکل زیر :است

cin >> variable;

variable .نام یک متغیر است

Page 20: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

استفاده از عملگر ورودی1 – 10مثال برنام=ۀX زی=ر ی=ک ع=دد از ک=اربر گرفت=ه و هم=ان ع=دد را

دوباره در خروجی نمایش می دهد: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: 52your number is: 52

Page 21: هدف درس: روش صحیح تولید برنامه +  ارتقاء تکنیکهای برنامه نویسی

عملگ=ر ورودی ن=یز مانن=د عملگ=ر خ=روجی ب=ه ش=کل جری=انی رفت=ار می کن=د. یع=نی هم===ان ط===ور ک===ه در عملگ===ر خ===روجی می توانس=تیم چن=د عب=ارت را ب=ا اس=تفاده

ب=ه ص=ورت پش=ت س=ر >>از چن=د عملگ=ر هم چ==اپ ک==نیم، در عملگ==ر ورودی ن==یز

<<می ت=وانیم ب=ا اس=تفاده از چن=د عملگ=ر چن=د مق=دار را ب=ه ص=ورت پش=ت س=ر هم دری===افت ک===نیم. مثال ب===ا اس===تفاده از

دستور:cin >> x >> y >> z;

ب==ه ت==رتیب از ورودی z و yو xسه مق==دار دری=افت می ش=وند. ب=رای این ک=ار بای=د بین ه=ر

( بگذاری=د و spaceورودی ی=ک فض=ای خ=الی ) enterپس از ت=ایپ ک=ردن هم=ۀX ورودی ه=ا، کلی=د

را بفشارید.