درس برنامه‌سازي کامپيوتر

Slides:



Advertisements
Similar presentations
Lecture Computer Science I - Martin Hardwick The Programming Process rUse an editor to create a program file (source file). l contains the text of.
Advertisements

C++ Basics Variables, Identifiers, Assignments, Input/Output.
C Programming Basics Lecture 5 Engineering H192 Winter 2005 Lecture 05
J. P. Cohoon and J. W. Davidson © 1999 McGraw-Hill, Inc. The Fundamentals of C++ Basic programming elements and concepts.
CS1061 C Programming Lecture 4: Indentifiers and Integers A.O’Riordan, 2004.
KEAN UNIVERSITY Visual C++ Dr. K. Shahrabi. Developer studio Is a self-contain environment for creating, compiling, linking and testing windows program.
CS 192 Lecture 3 Winter 2003 December 5, 2003 Dr. Shafay Shamail.
© Janice Regan, CMPT 128, Jan CMPT 128: Introduction to Computing Science for Engineering Students Data representation and Data Types Variables.
COMPUTER PROGRAMMING. Data Types “Hello world” program Does it do a useful work? Writing several lines of code. Compiling the program. Executing the program.
1 Identifiers  Identifiers are the words a programmer uses in a program  An identifier can be made up of letters, digits, the underscore character (
CS 161 Introduction to Programming and Problem Solving Chapter Hello World Program in C++ And Lexical Rules Herbert G. Mayer, PSU Status 10/18/2014.
C Tokens Identifiers Keywords Constants Operators Special symbols.
C-Language Keywords(C99)
 Programming Languages  First Generation Languages (Machine Language)  We Actually have to do a few things. First we have to find the operating code,
1 More C++ Basics Chapter 3 Lecture CSIS 10A. 2 Agenda Review  C++ Standard Numeric Types Arithmetic–way more than you want! Character (char) data type.
C++ Programming, Namiq Sultan1 Chapter 2 Introduction to C++ Namiq Sultan University of Duhok Department of Electrical and Computer Engineerin Reference:
Dennis Ritchie 1972 AT & T Bell laboratories (American Telephone and Telegraph) USA 1www.gowreeswar.com.
COMPUTER PROGRAMMING. variable What is variable? a portion of memory to store a determined value. Each variable needs an identifier that distinguishes.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 5P. 1Winter Quarter C Programming Basics.
Instructor: Alexander Stoytchev CprE 185: Intro to Problem Solving (using C)
Computing with C# and the.NET Framework Chapter 2 C# Programming Basics ©2003, 2011 Art Gittleman.
Variables and Data Types.  Variable: Portion of memory for storing a determined value.  Could be numerical, could be character or sequence of characters.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 5P. 1Winter Quarter C Programming Basics Lecture 5.
Data Structure and c K.S.Prabhu Lecturer All Deaf Educational Technology.
Data Types, Primitive Types in C++, Variables – Declaration, Initialization, Scope Telerik Software Academy academy.telerik.com Learning and Development.
Gator Engineering 1 Chapter 2 C Fundamentals (Continued) Copyright © 2008 W. W. Norton & Company. All rights reserved.
By Anand George SourceLens.org Copyright. All rights reserved. Content Owner - Meera R (meera at sourcelens.org)
C++ Basics Programming. COMP104 Lecture 5 / Slide 2 Introduction to C++ l C is a programming language developed in the 1970s with the UNIX operating system.
1 CSC 1111 Introduction to Computing using C++ C++ Basics (Part 1)
2. C FUNDAMENTALS. Example: Printing a Message /* Illustrates comments, strings, and the printf function */ #include int main(void) { printf("To C, or.
Basic Types, Variables, Literals, Constants. What is in a Word? A byte is the basic addressable unit of memory in RAM Typically it is 8 bits (octet)
C++ Lesson 1.
Asst.Prof.Dr. Tayfun ÖZGÜR
Variables, Identifiers, Assignments, Input/Output
Control Statements in C
Data types Data types Basic types
LESSON 3 IO, Variables and Operators
Compiler Construction
Computing with C# and the .NET Framework
مبانی کامپیوتر و برنامه سازی
CMSC 104, Section 4 Richard Chang
بسم الله الرحمن الرحيم.
Reserved Words.
2008/10/01: Lecture 8 CMSC 104, Section 0101 John Y. Park
CMSC 104, Section 4 Richard Chang
null, true, and false are also reserved.
Character Set The character set of C represents alphabet, digit or any symbol used to represent information. Types Character Set Uppercase Alphabets A,
C++ Basics.
פרטים נוספים בסילבוס של הקורס
Oрганизација програма
Introduction to Java Programming
Variables in C Topics Naming Variables Declaring Variables
פרטים נוספים בסילבוס של הקורס
Keywords.
Govt. Polytechnic,Dhangar
Variables, Identifiers, Assignments, Input/Output
Variables in C Topics Naming Variables Declaring Variables
JavaScript Reserved Words
Prof. Bhushan Trivedi Director GLS Institute of Computer Technology
Variables in C Declaring , Naming, and Using Variables.
Module 2 Variables, Assignment, and Data Types
2. Second Step for Learning C++ Programming • Data Type • Char • Float
Programming Language C Language.
Building Blocks of C Programming Language
2008/10/01: Lecture 8 CMSC 104, Section 0101 John Y. Park
C Language B. DHIVYA 17PCA140 II MCA.
Variables in C Topics Naming Variables Declaring Variables
Module 2 - Part 1 Variables, Assignment, and Data Types
Variables in C Topics Naming Variables Declaring Variables
Variables in C Topics Naming Variables Declaring Variables
Presentation transcript:

درس برنامه‌سازي کامپيوتر مقدمات برنامه‌نويسي جزئيات زبان برنامه‌سازي C++

الگوريتم Algorithm روش حل مسئله مثال :

Flowchart

Flowchart

فرآيند برنامه‌نويسي تعريف مسأله تدوين راه حل (الگوريتم-فلوچارت) توسط برنامه‌نويس از منابع ديگر پياده‌سازي بکمک زبان مورد نظر احتمالاٌ ابتدا بر روي کاغذ در فايل-کامپايل-لينک اجرا-اعمال وروديهاي مناسب- بررسي صحت پاسخها در صورت لزوم اصلاح الگوريتم/برنامه و تکرار تا دستيابي به پاسخ کاملاٌ صحيح : debug کردن

قواعد زبان C متن برنامة زبان C شامل حروف (الفباي انگليسي) a-z و A-Z ارقام 0-9 علائم / = ‘ ” _ : ; ? | \ ~ ` ! @ # $ % ^ & * ( ) - + . > , < ] [ } { Blankها شامل space و tab زبان C حساس به نوع کاراکتراست : case sensitive

کد اسکي ASCII

قواعد زبان C Identifierها طول دلخواه (32 کاراکتر اول در نظر گرفته مي‌شوند) شامل يک يا چند حرف (بزرگ يا کوچک) رقم Underline : _ نبايد با رقم شروع شود معمولاٌ از identifierهاي با تمامي حروف بزرگ در فايلهاي کتابخانه استفاده مي‌شود شروع با _ در توابع و متغيرهاي سيستم (عامل) استفاده مي‌شود

قواعد زبان C Keywords (identifierهاي پيش‌تعريف شده C)

قواعد زبان C Keywords (identifierهاي پيش‌تعريف شده C++) asm auto bool break case catch char class const const_cast continue default delete do double dynamic_cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new operator private protected public register reinterpret_cast return short signed sizeof static static_cast struct switch template this throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while _cdecl cdecl _cs _ds _es _far _loadds _near _savereg _seg _ss

قواعد زبان C متغيرها براي کار با اطلاعات بايد بتوان آنها را در جايي نگهداي نمود در زمان مورد نظر از مقادير آنها استفاده نمود در صورت لزوم مقادير آنها را طبق نياز تغيير داد در C براي استفاده از متغير، نخست بايد نوع متغير را مشخص نمود

متغيرها محل نگهداري داده‌ها متغير با نام و نوعش مشخص مي‌شود char a; int b=1, c=2; float d, e=4.5; char f[]=“a new program”; int g[5]={1,4,35,109,6};

char يک بايتي با علامت : مقادير بين 128- تا 127 را اتخاذ مي‌کند 27- تا 1-27 نوع بي‌علامت به modifier احتياج دارد : unsigned صفر تا 1-28 کاربرد: کار با مقادير کوچک کارهاي مرتبط با سخت‌افزار (بيتها و بايتها) کار با متون

int 2 يا 4 بايتي نوع بي‌علامت به modifier احتياج دارد : unsigned در سيستم‌عاملهاي 16 بيتي 2 بايتي و در نوع 32 بيتي چهار بايتي 215- تا 1-215 براي دو بايتي و 231- تا 1-231 چهار بايتي نوع بي‌علامت به modifier احتياج دارد : unsigned صفر تا 1-216 يا صفر تا 1-232 کاربرد: کارهاي معمول با اعداد صحيح، ردة مقادير متوسط

short همان متغير نوع int در حالت 16 بيتي (2 بايتي)

long همان متغير نوع int در حالت 32 بيتي (4 بايتي)

enum در حالتي که متغير مورد نياز حالتهايي را اتخاذ مي‌نمايد که واقعاٌ مقدار يا عددي نيستند مثال : تعريف نوع متغير متغيري که نوع گُل را مشخص کند enum gols {rose, daisy, orchid, tulip}; متغيري که نوع خودرو را مشخص کند enum cars {benz, nissan, bmw, lexus, mazda, samand}; متغيري که نوع پاسخ به سؤال را مشخص کند enum javab {yes, no, dont_know}; اين متغير واقعاٌ از نوع int خواهد بود

enum مثال : تعريف نمونة متغير کاربرد : متغيري که نوع گُل را مشخص کند enum gols gol; متغيري که نوع خودرو را مشخص کند enum cars car, mashin; متغيري که نوع پاسخ به سؤال را مشخص کند enum javab pasokh; کاربرد : gol=daisy; if (pasokh==no); car=mashin;

float متغير با امکان نمايش مقادير کوچکتر از واحد 4 بايتي محدودة نمايش اعداد تقريباٌ از 38-10× 3/4 تا 38+10× 3/4 و معادل آن در محدودة اعداد منفي و صفر مانتيس 3 بايتي (24 بيتي) و نماي يک بايتي معادل 7 رقم با معني مبناي 10

double متغير با امکان نمايش مقادير کوچکتر از واحد 8 بايتي محدودة نمايش اعداد تقريباٌ از 308-10× 1/7 تا 308+10× 1/7 و معادل آن در محدودة اعداد منفي و صفر مانتيس 6 بايتي (48 بيتي) و نماي دو بايتي معادل پانزده رقم با معني مبناي 10

long double متغير با امکان نمايش مقادير کوچکتر از واحد 10 بايتي محدودة نمايش اعداد تقريباٌ از 308-10× 1/7 تا 308+10× 1/7 و معادل آن در محدودة اعداد منفي و صفر مانتيس 8 بايتي (64 بيتي) و نماي دو بايتي معادل 19 رقم بامعني مبناي 10

pointer جهت ذخيرة مقادير اشاره‌گرها به آدرسهاي حافظه شکل خاص دارد و با متغيرهاي ديگر مشابهتي ندارد فضاي مورد استفاده : 32 (يا 64) بيت

تعريف مقادير ثابت گاهي لازم است مقادير ثابتي را در برنامه تعريف کنيم يعني به هيچ ترتيب نشود مقدار آن تغيير کند روشها : بکمک modifier : محل تعريف : در فضاي اصلي برنامه در اين روش واقعاٌ متغيري ايجاد مي‌شود = فضاي حافظه استفاده مي‌گردد const float pi = 3.14159; بکمک preprocessor : محل تعريف : در ابتدا : قبل از فضاي اصلي برنامه : فضاي مشخص نمودن عمليات preprocess در اين روش متغيري ايجاد نمي‌شود = قبل از کامپايل شدن برنامه مقدار تعريف شده به متن اصلي اعمال مي‌گردد ( ; لازم ندارد) #define pi 3.14159

عملگرها + - * / % -- ++ a=5; b=3; c=a--+b+a---a++; d=--a---b+--a-++a; Pre(post)in(de)crement a=5; b=3; c=a--+b+a---a++; d=--a---b+--a-++a; تقدم عملگرها (++,--) (sign +,-) (*,/,%) (+,-) در صورت ابهام شکل داراي اولويت بالاتر انتخاب مي‌شود

تبديل انواع متغيرها در عملياتي که طرفين عمليات همجنس نيستند، نخست طرف نوع پايين‌تر به نوع بالاتر تبديل شده، سپس عمل اجرا مي‌شود ترتيب انواع : long double double float long int short Char

قطع شدن عدد هنگام انتقال محتويات متغير با ابعاد بزرگتر به متغير با ابعاد کوچکتر (با فرض انتقال سالم) به وضعيتهاي مختلفي که در محدودة اعداد مثبت و منفي رخ مي‌دهد توجه کنيد بخش صحيح گرد کردن (rounding) ceiling floor

مثال int n=3, m=4; float f=7, g; // float f=7.0, g; g=f+n/m; g=f+float(n)/m; g=f+3.0/m; g=m+f/n

عملگرهاي بيتي & ، | ، ^ ، ~ ، << ، >> char b=3, a=50, c; // a=0000,0011 b=0011,0010 c=a&b; c=a|b; c=a^b; c=a&~b; c=a<<1; c=b>>2;

عملگرهاي نسبي (ارزيابي) شامل عمليات پاية == ، <= ، >= ، < ، > ، != قابل ترکيب بکمک عملگرهاي ) ، ( ، && ، || ، ~ char a=2, b=3; printf(“\n %d > %d is %d” , a, b, (a>b)); c=(a<=(b-1)); توجه شود که هر عبارت مورد ارزيابي، در هر مرحلة ارزيابي، صحيح يا غلط ارزيابي مي‌شود. ارزش عبارت غلط معادل صفر و ارزش عبارت صحيح معادل يک خواهد بود اگر عددي بدون عملگر در موقعيت ارزيابي قرار گيرد در صورتي که مقدار آن (محتويات آن) صفر (عدد صفر) باشد معادل غلط و در غير اين صورت معادل صحيح ارزيابي مي‌شود

عملگرهاي ترکيبي برخي عملگرها با هم ترکيب مي‌شوند (چند عمل با يک عملگر ترکيبي نشان داده مي‌شود) a+=1; // equal to a=a+1; عملگرهاي ترکيبي مشابه -= , *= , /= , %= , >>= , <<= , &= , |= , ^=

عملگرها – ساير حالتها &x آدرس متغير x *p محتويات آدرس p

حالتهاي خاص x = a>b ? 3 : 4 ; y = ( x=2, x*4/y ); x= sizeof y; m=sizeof(float);

تقدم عمليات (جزئيات) () [] -> . ++ -- ~ ! & * - sizeof (اشاره‌گر و علامت) * / % + - >> << > <= >= > == != & ^ | && || ? : = %= += -= *= /= <<= >>= &= ^= |= ,

مثال y = 4 * 2 / (3+1)+(6+(7-2+8));

نمونة برنامه Convert