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

Slides:



Advertisements
Similar presentations
Chapter 1 An Overview of Computers and Programming Languages.
Advertisements

Chapter 1: An Overview of Computers and Programming Languages
Overview of Computers & Programming Languages Chapter 1.
COSC 120 Computer Programming
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
Chapter 1: An Overview of Computers and Programming Languages J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition by Tony Gaddis, Judy Walters,
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 Introduction.
CHAPTER 1: AN OVERVIEW OF PROGRAMMING INSTRUCTOR: MOHAMMAD MOJADDAM How to Program in C++
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages Updated by: Dr\Ali-Alnajjar.
CHAPTER 1 AN OVERVIEW OF COMPUTERS AND PROGRAMMING LANGUAGES.
Chapter 1: An Overview of Computers and Programming Languages.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
Why Program? Computer – programmable machine designed to follow instructions Program – instructions in computer memory to make it do something Programmer.
Chapter Introduction to Computers and Programming 1.
CSC 125 Introduction to C++ Programming Chapter 1 Introduction to Computers and Programming.
About the Presentations The presentations cover the objectives found in the opening of each chapter All chapter objectives are listed in the beginning.
Chapter 1 An Overview of Computers and Programming Languages.
EGR 2261 Engineering Problem Solving Using C and C++ Professor Nick Reeder.
Hello World 2 What does all that mean?.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design, Fourth Edition Chapter 1: An Overview of Computers and Programming Languages.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 1: An Overview of Computers and Programming Languages.
Overview of Programming and Problem Solving. Objectives In this chapter you will: Learn about different types of computers Explore the hardware and software.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 1: An Overview of Computers and Programming Languages.
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 1: An Overview of Computers and Programming Languages.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
C++ Programming: From Problem Analysis to Program Design, Fourth Edition Chapter 1: An Overview of Computers and Programming Languages.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Chapter 11  Getting ready to program  Hardware Model  Software Model  Programming Languages  Facts about C++  Program Development Process  The Hello-world.
C++ Programming: Program Design Including Data Structures, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages.
Chapter 1 An Overview of Computers and Programming Languages.
Copyright © 2014, 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Eighth Edition by Tony Gaddis,
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Introduction to Programming By: Prof. Muhammad Abu Baker Siddique 2 nd Lecture 1.
Chapter 1: Introduction to Computers and Programming
Chapter 1 Introduction 2nd Semester H
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
About the Presentations
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design
Chapter 1: Introduction to Computers and Programming
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
Chapter 1: An Overview of Computers and Programming Languages
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
Reminders Please turn off cell phones.
Presentation transcript:

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 1

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 Edition2

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 Edition3

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 Edition4

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 Edition5

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

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 Edition7

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

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

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

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

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 Edition13

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 Edition15

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 Edition16

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 17

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 Edition18

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 Edition19

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 Edition21

Programming Language Evolution Early computers were programmed in machine language To calculate wages = rates * hours in machine language: //Load //Multiply //Store C++ Programming: From Problem Analysis to Program Design, Third Edition22

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 Edition23

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 Edition24

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 Edition25

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

A C++ Program cout << "My first C++ program." << endl; 27 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. 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 endl causes the insertion point to move to the beginning of the next line.

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

A C++ Program cout << "The sum of 2 and 3 = " << 5 << endl; Sample Run: The sum of 2 and 3 = 5 C++ Programming: From Problem Analysis to Program Design, Third Edition29 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.

A C++ Program cout << "7 + 8 = " << << endl; Sample Run: = 15 C++ Programming: From Problem Analysis to Program Design, Third Edition30 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.

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 Edition31

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.

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.

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

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.

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.

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

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 Edition38

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 Edition39

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 Edition40

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 41

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

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 Edition44

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 Edition45

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 Edition46

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 Edition47

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