اصول کامپیوتر ۱ مبانی کامپیوتر و برنامه‌سازی

Slides:



Advertisements
Similar presentations
Computer Programming Basics Assistant Professor Jeon, Seokhee Assistant Professor Department of Computer Engineering, Kyung Hee University, Korea.
Advertisements

© 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5/e Starting Out with C++: Early Objects 5 th Edition Chapter 2 Introduction.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2: Introduction to C++ Starting Out with C++ Early Objects Sixth.
A simple C++ program /* * This program prints the phrase "Hello world!" * on the screen */ #include using namespace std; int main () { cout
CS31: Introduction to Computer Science I Discussion 1A 4/2/2010 Sungwon Yang
Basic Elements of C++ Chapter 2.
C++ Programming Language Day 1. What this course covers Day 1 – Structure of C++ program – Basic data types – Standard input, output streams – Selection.
VARIABLES, TYPES, INPUT/OUTPUT, ASSIGNMENT OPERATION Shieu-Hong Lin MATH/CS Department Chapel.
Introduction to Programming (in C++) Data and statements Jordi Cortadella, Ricard Gavaldà, Fernando Orejas Dept. of Computer Science, UPC.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2: Introduction to C++ Starting Out with C++ Early Objects Seventh.
Elements of a C++ program 1. Review Algorithms describe how to solve a problem Structured English (pseudo-code) Programs form that can be translated into.
Input & Output: Console
CSC 107 – Programming For Science. Announcements  Textbook available from library’s closed reserve.
CS1 Lesson 2 Introduction to C++ CS1 Lesson 2 -- John Cole1.
M. Taimoor Khan #include void main() { //This is my first C++ Program /* This program will display a string message on.
CSC 107 – Programming For Science. Announcements  Memorization is not important, but…  … you will all still be responsible for information  Instead.
Data & Data Types & Simple Math Operation 1 Data and Data Type Standard I/O Simple Math operation.
C++ Programming: Basic Elements of C++.
CHAPTER 7 DATA INPUT OUTPUT Prepared by: Lec. Ghader R. Kurdi.
1 CS161 Introduction to Computer Science Topic #3.
CSC1201: Programming Language 2 Lecture 1 Level 2 Course Nouf Aljaffan (C) CSC 1201 Course at KSU1.
A first program 1. #include 2. using namespace std; 3. int main() { 4. cout
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2: Introduction to C++ Starting Out with C++ Early Objects Sixth.
Introducing C++ Programming Lecture 3 Dr. Hebbat Allah A. Elwishy Computer & IS Assistant Professor
CSCI 3133 Programming with C Instructor: Bindra Shrestha University of Houston – Clear Lake.
C++ Programming Lecture 3 C++ Basics – Part I The Hashemite University Computer Engineering Department (Adapted from the textbook slides)
Lecture 5 Computer programming -1-. Input \ Output statement 1- Input (cin) : Use to input data from keyboard. Example : cin >> age; 2- Output (cout):
Objects Variables and Constants. Our Scuba Problem #include // cin, cout, > using namespace std; int main() { const double FEET_PER_ATM = 33.0, LBS_PER_SQ_IN_PER_ATM.
 Memory setup  Pointer declaration  Address operator  Indirection  Printing addresses or pointers.
Literals A literal (sometimes called a constant) is a symbol which evaluates to itself, i.e., it is what it appears to be. Examples: 5 int literal
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2: Introduction to C++ Starting Out with C++ Early Objects Seventh.
LESSON 2 Basic of C++.
Chapter 2 Creating a C++ Program. Elements of a C++ Program Four basic ways of structuring a program Four basic ways of structuring a program 1.Sequencing.
1 Structure of Simple C++ Program Chapter 1 09/09/13.
1 17/4/1435 h Monday Lecture 3 The Parts of a C++ Program.
C++ Lesson 1.
C++ First Steps.
Chapter 1.2 Introduction to C++ Programming
C++ Programming: Presentation 1
Chapter Topics The Basics of a C++ Program Data Types
Topic Pre-processor cout To output a message.
Chapter 1.2 Introduction to C++ Programming
LESSON 2 Basic of C++.
Chapter 2: Introduction to C++
Characters and Strings
Documentation Need to have documentation in all programs
Basic Elements of C++.
Command Line Arguments
Introduction to C++ October 2, 2017.
Chapter 2: Introduction to C++
Basic Elements of C++ Chapter 2.
Chapter 2: Introduction to C++
CS 1430: Programming in C++ Turn in your Quiz1-2 No time to cover HiC.
C++ fundamentals Lecture 1, Chapter 2 – pp /22/2018 Y K Choi.
2.1 Parts of a C++ Program.
אבני היסוד של תוכנית ב- C++
אבני היסוד של תוכנית ב- C++
Starting Out with C++: From Control Structures through Objects
If Statements.
Chapter 2: Introduction to C++.
C++ Programming Lecture 3 C++ Basics – Part I
Engineering Problem Solving with C++ An Object Based Approach
Engineering Problem Solving with C++ An Object Based Approach
Lecture 2 Fall 2011 September 13-15, 2011 Ghufran Ahmed
What Actions Do We Have Part 1
C++ Programming Basics
(Dreaded) Quiz 2 Next Monday.
Characters and Strings
Chapter 1 c++ structure C++ Input / Output
CSE Module 1 A Programming Primer
Presentation transcript:

اصول کامپیوتر ۱ مبانی کامپیوتر و برنامه‌سازی اصول کامپیوتر ۱ مبانی کامپیوتر و برنامه‌سازی «جلسه‌ی پانزدهم» دانشکده‌ی علوم ریاضی - دانشگاه شهید بهشتی نیم‌سال اول ۹۰-۱۳۸۹ مدرس: سید علی کتان‌فروش گردآوری و تألیف: سید علی کتان‌فروش حق هر نوع استفاده متعلق به پدیدآورنده است. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم دستورات پیش-پردازشگر preprocessor instructions اعلان توابع و کلاس‌ها دستورات برنامه‌نویسی توضیحات comments 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

توضیحات متن دلخواه درون برنامه که کامپایلر آنرا نادیده می‌گیرد. توضیحات متن دلخواه درون برنامه که کامپایلر آنرا نادیده می‌گیرد. /* test263.cpp, version 0.15 copyright Ali Katanforoush last update: 1389/9/14 */ #include <iostream> #define MAX_SIZE 20 using namespace std; int main( int argc, char *argv[]){ Block comments باید بین /* و */ نوشته شود 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

دستورات پیش پردازشگر /* test263.cpp, version 0.15 copyright Ali Katanforoush last update: 1389/9/14 */ #include <iostream> #define MAX_SIZE 20 using namespace std; int main( int argc, char *argv[]){ Preprocessing instructions هر دستور با علامت # شروع می‌شود و در یک خط نوشته می‌شود 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی اعلان توابع .... #include <iostream> #define MAX_SIZE 20 using namespace std; int main( int argc, char *argv[]) { int a[MAX_SIZE]; int i; for ( i=0;i<MAX_SIZE;i++ ) } Function declaration 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی دستورات برنامه‌نویسی int main( int argc, char *argv[]) { int n,k; // TODO print a prompt for input cin >> n >> k; int A,B; A = 1; // initialize A by 0! int i; for ( i=1; i<=n; i++ ) A = A * i; // here last edit, 23:59 89/10/15 for ( i=1; i<=n-k; i++ ) B = B * i; cout << A/B << endl; } Line comments مقابل // نوشته می‌شوند 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم در انتهای هر دستور برنامه‌نویسی یک علامت ; نوشته می‌شود. با نوشتن مجموعه‌ای از دستورات بین علامت { و }، یک بلوک از دستورات داریم که از نظر گرامر برنامه‌نویسی، جایگاهی معادل یک دستور دارد. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم در انتهای هر دستور برنامه‌نویسی یک علامت ; نوشته می‌شود. S = 0; for ( i=1; i<n; i++ ) if ( i%2 == 0 ) S = S + 4.0/(2*i+1); else S = S – 4.0/(2*i+1); cout << "PI = " << S << endl; S = 0; for ( i=1; i<n; i++ ) { if ( i%2 == 0 ) S = S + 4.0/(2*i+1); else S = S – 4.0/(2*i+1); } cout << "PI = " << S << endl; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم با نوشتن مجموعه‌ای از دستورات بین علامت { و }، یک بلوک از دستورات داریم که از نظر گرامر برنامه‌نویسی، جایگاهی معادل یک دستور دارد. for ( i=1; i<=10; i++ ) { for ( j=1; j<=10; j++ ) cout << i*j << " "; cout << endl; } for ( i=1; i<=10; i++ ) for ( j=1; j<=10; j++ ) cout << i*j; cout << endl; for ( i=1; i<=10; i++ ) for ( j=1; j<=10; j++ ) cout << i*j << " "; cout << endl; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

مروری بر آنچه از زبان برنامه‌نویسی ++C/C آموخته‌ایم Type Description Size Range int اعداد صحیح 4 bytes -2147483648 to 2147483647 float اعداد اعشاری (با دقت معمولی)‏ +/-3.4E+/-38 (~7 digits) double اعداد اعشاری با دقت مضاعف 8 bytes +/-1.7E+/-308 (~15 digits) bool بولی 1 byte {false, true} char کاراکتر 0 to 255 نوع داده‌ای رشته (string) جزء انواع داده‌ای مقدماتی زبان C نیست. با وجود این، کتابخانه‌ی string که از کتابخانه‌های استاندارد ++C است این نوع را تعریف می‌کند. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی ثابت‌ها در زبان ++C/C در برنامه‌نویسی به زبان C، نوع داده‌ای ثابت‌ها باید مورد توجه قرار گیرد. مقادیر ثابت در برنامه همانند متغیرها، بخشی از حافظه‌ی کامپیوتر را به خود اختصاص می‌دهند. به عبارت دقیق‌تر، کامپایلر به هر یک از مقادیر ثابت نوشته شده در دستورات برنامه، حافظه‌ی معینی اختصاص می‌دهد و مقدار ثابت را در آن حافظه ذخیره می‌کنند. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی ثابت‌ها در زبان ++C/C int n = 2; double x = 4 * n + 0.5; x n 8.5 4 * + 2 0.5 هر مقدار ثابت در برنامه، فضای معینی از حافظه را اشغال می‌کند. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی ثابت‌ها در زبان ++C/C مقدار فضایی از حافظه‌ی برنامه که به هر ثابت اختصاص داده می‌شود متناسب با نوع داده‌ای آن ثابت است. به عنوان مثال، 150 در ۴ بایت (حافظه‌ی مورد نیاز برای یک عدد int) و 1.0 در ۸ بایت (حافظه‌ی مورد نیاز برای عدد double) ذخیره می‌شوند. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی ثابت‌ها در زبان ++C/C نوع داده‌ای ثابت‌ها بر نحوه‌ی فراخوانی و محاسبه‌ی توابع و عملگرها تأثیر می‌گذارد. 9/2 → 4 خارج قسمت صحیح 9.0/2.0 → 4.5 خارج قسمت اعداد اعشاری 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نگارش ثابت‌ها در زبان ++C/C ثابت‌ها به دو شکل در برنامه مورد استفاده قرار می‌گیرند. ثابت‌های نوشتاری Literal constant ثابت‌های تعریف‌شده Defined/declared constant شکل نوشتاری ثابت‌های نوشتاری، ثابت بودن آن‌ها را تصریح می‌کند. مثل 1340 یا 3.14 یا 'a' و "hello" ثابت‌های تعریف‌شده، از طریق یک نام (شناسه) قابل استفاده هستند. مثلاً M_PI نام تعریف شده‌ی عدد π در کتابخانه‌ی cmath است. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C ۱. ثابت‌های عدد صحیح int مبنای ده (شکل متعارف نگارش اعداد با ارقام هندی- عربی). مثل 123 اگر عدد با صفر شروع شود کامپایلر آنرا در مبنای هشت در نظر می‌گیرد. مثل 0100 که معادل ۶۴ است. اگر عدد جلوی 0x نوشته شود کامپایلر آنرا در مبنای شانزده در نظر می‌گیرد. مثل 0xA0 که معادل ۱۶۰ است. برای نگارش اعداد در مبنای شانزده، از A بجای ۱۰، B بجای ۱۱ و ... F بجای ۱۵ استفاده می‌کنیم. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C ۲. ثابت‌های اعشاری float و double وجود نقطه‌ی اعشار برای کامپایلر دال بر اعشاری بودن نوع داده‌ای ثابت است. مثل 1.0 یا 3.14 یا 0.5 نماد علمی. 6.02e23 1.6e-19 ثابت‌های اعشاری به طور پیش‌فرض از نوع double هستند. اگر می‌خواهید کامپایلر یک ثابت اعشاری را از نوع float در نظر گیرد حرف f را در انتهای ثابت بنویسید. مثل 1.0f 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C علائم نوشتاری ثابت‌ها (مثل نقطه‌ی اعشار و ...)، عملگر نیستند! int n; double x = n.0 / 2; غلط double x = n / 2.0; درست double x = double(n) / 2; درست double M = 1.0e(n); غلط double M = 1.0e n; غلط double M = pow(10,n); درست 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی مثال. برنامه‌ای برای مشاهده‌ی کوچکترین عدد مثبت قابل نمایش در نوع داده‌ای double int main() { double e = 1; while ( e > 0 ) { cout << e << endl; e = e / 2; } system("pause"); return 0; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی مثال. برنامه‌ای برای مشاهده‌ی بیشترین تعداد ارقام معنادار قابل نمایش در نوع داده‌ای double int main() { double d = 1; while ( 1 + d != 1 ) d = d / 2; cout << d << endl; system("pause"); return 0; } هر دو برنامه را به ازای نوع داده‌ای float نیز اجرا کنید. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C ۳. ثابت‌های کاراکتری char باید بین دو علامت single quote نوشته شوند و دقیقاً یک کاراکتر باشند. مثل 'a' یا '=' یا ' ' (space) ۴. ثابت‌های رشته‌ای string باید بین دو علامت double quote نوشته شوند و می‌توانند یک، هیچ یا چند کاراکتر باشند. مثل "a" یا "abc" یا "" (رشته‌ی تهی) 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش کاراکترهای ویژه در ++C/C به طور کلی، علامت backslash در ثابت‌های کاراکتری و رشته‌ای، برای کامپایلر نشاندهنده‌ی آن است که کاراکتری که در ادامه‌ی آن نوشته شده است یک کاراکتر ویژه است. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش کاراکترهای ویژه در ++C/C مثال. cout << "A\tB\tC\tD" << endl; cout << "one\n two\n three\n" << endl; cout << "12346\b5" << endl; cout << "C:\\Documents and Settings\\User1\\Desktop\n"; cout << "Please, type \"yes\" to continue." << endl; cout << "Early soon \0 stop!" << endl; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

خصوصیات نوع داده‌ای کاراکتر در زبان ++C/C به طور کلی آنچه به عنوان کاراکتر در حافظه‌ی کامپیوتر ذخیره می‌شود کد اَسکی متناظر با آن کاراکتر است که در عمل، یک عدد صحیح بین 0 تا 255 است. در زبان C، کاراکترها به طور صریح قابل تبدیل به نوع داده‌ای عدد صحیح (int) هستند. cout << int('a'); // 97 همچنین، مقادیر عدد صحیح نیز به طور صریح قابل تبدیل به نوع کاراکتری (char) هستند. cout << char(100); // d 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

خصوصیات نوع داده‌ای کاراکتر در زبان ++C/C if ( 'A' <= c && c <= 'Z') cout << c << " is a capital letter"; اگر در عبارتی، تابع یا عملگری از توابع یا عملگرهای اعداد صحیح بر روی مقادیر کاراکتری بکار بسته شود کامپایلر به طور ضمنی، نوع کاراکتر را به نوع عدد صحیح، یعنی کد اَسکی متناظر با کاراکتر تبدیل می‌کند. c = c + 'A' – 'a'; // capitalize 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

خصوصیات نوع داده‌ای کاراکتر در زبان ++C/C مثال. برنامه‌ای بنویسید که یک عدد صحیح را به صورت کاراکتری دریافت کند و ارزش عددی آنرا محاسبه و چاپ کند. char c; int n = 0; cin >> c; while ( '0' <= c && c <= '9' ) { n = 10*n + c – '0'; } cout << n << endl; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

خصوصیات نوع داده‌ای کاراکتر در زبان ++C/C مسأله. برنامه‌ای بنویسید که یک عدد اعشاری را به صورت کاراکتری دریافت کند و ارزش عددی آنرا محاسبه و چاپ کند. 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C ۵. ثابت‌های بولی. کلمات کلیدی true و false در زبان ++C/C تنها ثابت‌های نوشتاری نوع داده‌ای بولی هستند. bool f = true; bool f = "true"; غلط عدد صفر معادل false و هر عدد صحیح غیر صفر معادل true در نظر گرفته می‌شود. bool f = 0; // false bool p = 100; // true 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی

نحوه‌ی نگارش ثابت‌های نوشتاری در زبان ++C/C در مقابل، در صورت استفاده از مقادیر بولی در عبارات محاسباتی مربوط به اعداد صحیح، false به عدد صفر و true به عدد یک تبدیل می‌شود. int s = 2 * (n>=0) – 1; 12/4/2018 اصول کامپیوتر ۱ / مبانی کامپیوتر و برنامه‌سازی