1 / 48

C++ Programming: From Problem Analysis to Program Design, Third Edition

C++ Programming: From Problem Analysis to Program Design, Third Edition. Chapter 1: An Overview of Computers and Programming Languages. Outline. 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer.

Albert_Lan
Download Presentation

C++ Programming: From Problem Analysis to Program Design, Third Edition

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming: From Problem Analysis to Program Design, Third Edition

  2. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  3. Objectives In this chapter you will: • Learn about different types of computers • Explore the hardware and software components of a computer system • Learn about the language of a computer • Examine high-level programming languages C++ Programming: From Problem Analysis to Program Design, Third Edition

  4. Objectives (continued) • Discover what a compiler is and what it does • Examine a C++ Program and explore how a C++ program is processed • Become aware of Standard C++ and ANSI/ISO Standard C++ C++ Programming: From Problem Analysis to Program Design, Third Edition

  5. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  6. Categories of Computers • Mainframe computers • Midsize computers • Micro computers (personal computers) C++ Programming: From Problem Analysis to Program Design, Third Edition

  7. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  8. Elements of a Computer System • Hardware • Central Processing Unit (CPU) • Main Memory • Secondary Storage • Input/ Output Devices • Software C++ Programming: From Problem Analysis to Program Design, Third Edition

  9. Central Processing Unit (CPU) The main components of the CPU are: • Control unit (CU) • Arithmetic and logic unit (ALU). • Registers. C++ Programming: From Problem Analysis to Program Design, Third Edition

  10. Central Processing Unit (CPU) • CU (Control Unit): • Fetches and decodes instructions • Controls flow of information in and out of MM • Controls operation of internal CPU components • ALU (arithmetic logic unit): carries out all arithmetic and logical operations C++ Programming: From Problem Analysis to Program Design, Third Edition

  11. Central Processing Unit (CPU) 3. Registers. • PC (program counter): points to next instruction to be executed • IR (instruction register): holds instruction currently being executed C++ Programming: From Problem Analysis to Program Design, Third Edition

  12. Main Memory • Directly connected to the CPU • All programs must be loaded into main memory before they can be executed • All data must be brought into main memory before it can be manipulated • When computer power is turned off, everything in main memory is lost C++ Programming: From Problem Analysis to Program Design, Third Edition

  13. Secondary Storage • Secondary storage: Device that stores information permanently • Examples of secondary storage: • Hard disks • Floppy disks • Zip disks • CD-ROMs • Tapes • Flash drives C++ Programming: From Problem Analysis to Program Design, Third Edition

  14. Input/output Devices • Input devices feed data and programs into computers. They include: • Keyboard • Mouse • Secondary storage • Output devices display results. They include: • Monitor • Printer • Secondary storage C++ Programming: From Problem Analysis to Program Design, Third Edition

  15. Software • Software: Programs that do specific tasks 1. System programs take control of the computer, such as an operating system • Operating System monitors the overall activity of the computer and provides services. 2. Application programs perform a specific task • Word processors • Spreadsheets • Games

  16. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  17. The Language of a Computer • Digital signals are sequences of 0s and 1s • Machine language: language of a computer • Binary digit (bit): • The digit 0 or 1 • Binary code: • A sequence of 0s and 1s • Byte: • A sequence of eight bits C++ Programming: From Problem Analysis to Program Design, Third Edition

  18. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  19. Programming Language Evolution • Early computers were programmed in machine language • To calculate wages = rates * hours in machine language: 100100 010001 //Load 100110 010010 //Multiply 100010 010011 //Store C++ Programming: From Problem Analysis to Program Design, Third Edition

  20. Assembly Language • Assembly language instructions are mnemonic. • Mnemonic (easy-to-remember). • Assembler: translates a program written in assembly language into machine language C++ Programming: From Problem Analysis to Program Design, Third Edition

  21. High-Level Languages • High-level languages include Basic, FORTRAN, COBOL, Pascal, C++, C, and Java • Compiler: translates a program written in a high-level language machine language • The equation wages = rate • hours can be written in C++ as: wages = rate * hours; C++ Programming: From Problem Analysis to Program Design, Third Edition

  22. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  23. A C++ Program #include <iostream> using namespace std; int main() { cout << "My first C++ program." << endl; cout << "The sum of 2 and 3 = " << 5 << endl; cout << "7 + 8 = " << 7 + 8 << endl; return 0; } Sample Run: My first C++ program. The sum of 2 and 3 = 5 7 + 8 = 15 C++ Programming: From Problem Analysis to Program Design, Third Edition

  24. A C++ Program cout << "My first C++ program." << endl; This is a C++ output statement. It causes the computer to evaluate the expression after the pair of symbols << and display the result in the screen. endl causes the insertion point to move to the beginning of the next line. C++ contain various types of Expressions such as arithmetic and strings. For example: 7+8 is arithmetic expression. Anything in double quotes is a string “7+8” is a string

  25. A C++ Program cout << "My first C++ program." << endl; Sample Run: My first C++ program. C++ Programming: From Problem Analysis to Program Design, Third Edition

  26. A C++ Program cout << "The sum of 2 and 3 = " << 5 << endl; Sample Run: The sum of 2 and 3 = 5 The first expression “The sum f 2 and 3 = “ is a string and evaluates to itself . The second expression consists of Number 5 and evaluates to itself. C++ Programming: From Problem Analysis to Program Design, Third Edition

  27. A C++ Program cout << "7 + 8 = " << 7 + 8 << endl; Sample Run: 7 + 8 = 15 The first expression “7 + 8 = “ is a string and evaluates to itself. The second expression consists of number 7 and 8, and the C++ arithmetic operator +. Therefore the result of the expression is the sum of 7 and 8 which is 15. C++ Programming: From Problem Analysis to Program Design, Third Edition

  28. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  29. Processing a Program The following steps are necessary to process a program in C++: Step 1: Use text editor to create a C++ program. This program is called source code or source program.

  30. Processing a Program Step 2: In a C++ program, statements that begin with the symbol # are called preprocessor directives. These statements are processed by a program called preprocessor.

  31. Processing a Program Step 3: Compiler is used to: • verifies that the program obeys the rules of the programming language and checks the source program for syntax errors. • Translate the program into equivalent machine language (object program).

  32. Processing a Program Step 4: Programs in high level languages are developed using a software development kit (SDK). • SDK contains programs that are useful in creating your program such as mathematical functions. • The prewritten code resides in a library. • Linker combines the object code with the program from libraries.

  33. Processing a Program Step 5: You must load the executable program into main memory for execution. Loader: a program that loads an executable program into main memory.

  34. Processing a Program Step 6: The final step is to execute the program.

  35. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  36. Problem Solving • Programming is a process of problem solving • Problem solving techniques • Analyze the problem • Outline the problem requirements • Design steps (algorithm) to solve the problem • Algorithm: • Step-by-step problem-solving process • Solution achieved in finite amount of time C++ Programming: From Problem Analysis to Program Design, Third Edition

  37. Problem Solving Process • Step 1 - Analyze the problem • Outline the problem and its requirements • Design steps (algorithm) to solve the problem • Step 2 - Implement the algorithm • Implement the algorithm in code • Verify that the algorithm works • Step 3 - Maintenance • Use and modify the program if the problem domain changes C++ Programming: From Problem Analysis to Program Design, Third Edition

  38. Example Design algorithm to find the perimeter and area of a rectangle. Analyze the problem: • To find the perimeter and area of a rectangle, we need to know the rectangle’s length and width. The perimeter and area of rectangle is given by the following formula: Perimeter = 2 . (length + width) Area = length . width

  39. Example (continues) Design algorithm: • Get length of Rectangle. • Get width of Rectangle. • Find the perimeter using the following equation: Perimeter = 2 . (length + width) • Find the area using the following equation: Area = length . width

  40. Compiling and Linking • Run code through compiler • If compiler generates errors • Look at code and remove errors • Run code again through compiler • If there are no syntax errors • Compiler generates equivalent machine code • Linker links machine code with system resources C++ Programming: From Problem Analysis to Program Design, Third Edition

  41. Outline 1. Overview of the History of Computers. 2. Elements of a Computer System. 3. The language of a computer. 4. The Evolution of Programming Languages. 5. A C++ Program. 6. Processing a Program. 7. Analysis-Coding-Execution Cycle. 8. ANSI/ISO Standard C++. C++ Programming: From Problem Analysis to Program Design, Third Edition

  42. ANSI/ISO STANDARD C++ • C++ evolved from C • C++ designed by Bjarne Stroustrup at Bell Laboratories in early 1980s • C++ programs were not always portable from one compiler to another • In mid-1998, ANSI/ISO C++ language standards were approved C++ Programming: From Problem Analysis to Program Design, Third Edition

  43. Summary • Computer: an electronic device that can perform arithmetic and logical operations • Computer system has hardware and software • Central processing unit (CPU): brain • Primary storage (MM) is volatile; secondary storage (e.g., disk) is permanent • Operating system monitors the overall activity of the computer and provides services C++ Programming: From Problem Analysis to Program Design, Third Edition

  44. Summary (continued) • Various kinds of languages, such as machine language, assembly, high-level • The problem-solving process has three steps: • Analyze problem and design an algorithm • Implement the algorithm in code • Maintain the program C++ Programming: From Problem Analysis to Program Design, Third Edition

More Related