Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.

Slides:



Advertisements
Similar presentations
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Advertisements

Lecture 1: Overview of Computers & Programming
CHAPTER 1: AN OVERVIEW OF COMPUTERS AND LOGIC. Objectives 2  Understand computer components and operations  Describe the steps involved in the programming.
Starting Out with C++, 3 rd Edition 1 Chapter 1. Introduction to Computers and Programming.
Chapter 2- Visual Basic Schneider
COSC 120 Computer Programming
Chapter 1 An Overview of Computers and Logic
16/13/2015 3:30 AM6/13/2015 3:30 AM6/13/2015 3:30 AMIntroduction to Software Development What is a computer? A computer system contains: Central Processing.
CIS105 Chapter 1 Theory Review. Page 2 Hardware and Software are the two major components o any computer system Hardware is the set of physical devices.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Sixth Edition by Tony Gaddis, Judy Walters,
An Overview of Computers and Logic
An Overview of Programming Logic and Design
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Programming Logic and Design, Introductory, Fourth Edition1 Understanding Computer Components and Operations (continued) A program must be free of syntax.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
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.
Programming Logic and Design Fourth Edition, Introductory
An Overview of Computers and Programming
Computers & Logic An Overview. Hardware Hardware is the equipment, or the devices, associated with a computer. For a computer to be useful, however, it.
Neal Stublen Computer Systems Hardware Display Keyboard Mouse Microphone Memory Chips Microprocessor.
Copyright 2003 Scott/Jones Publishing Brief Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
CS102 Introduction to Computer Programming
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Programming Logic and Design Fifth Edition, Comprehensive
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.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
CSC 125 Introduction to C++ Programming Chapter 1 Introduction to Computers and Programming.
An Overview of Computers and Logic
Topics Introduction Hardware and Software How Computers Store Data
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
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.
Design the program Create a detailed description of program –Use charts or ordinary language (pseudocode) Identify algorithms needed –Algorithm: a step-by-step.
P ROGRAMMING L OGIC AND D ESIGN S IXTH E DITION Chapter 1 An Overview of Computers and Programming.
An Object-Oriented Approach to Programming Logic and Design Chapter 1 An Overview of Computers and Logic.
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 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.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Programming Logic and Design Seventh Edition
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Copyright © 2014, 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Eighth Edition by Tony Gaddis,
Chapter 1: Introduction to Computers and Programming.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
CHAPTER 1 OVERVIEW OF COMPUTER AND PROGRAMMING 1.1 Electronic Computer Then and Now 1.2 Computer Hardware 1.3 Computer Software 1.4 The Software Development.
Chapter 1: Introduction to Computers and Programming
Chapter 1 Introduction 2nd Semester H
CHAPTER 1 C++ Programming - Introduction
BASIC PROGRAMMING C SCP1103 (02)
BASIC PROGRAMMING C SCP1103 (02)
DDC 1023 – Programming Technique
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Chapter 1. Introduction to Computers and Programming
Chapter 1: Introduction to Computers and Programming
Topics Introduction Hardware and Software How Computers Store Data
Chapter 2- Visual Basic Schneider
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
Chapter 2- Visual Basic Schneider
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
ICT Gaming Lesson 2.
ICS103 Programming in C 1: Overview of Computers And Programming
Programming Logic and Design Eighth Edition
Chapter 1: Introduction to Computers and Programming
Presentation transcript:

Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming

Objectives In this chapter, you will learn about: Computer systems Simple program logic The steps involved in the program development cycle Pseudocode statements and flowchart symbols Using a sentinel value to end a program Programming and user environments The evolution of programming models 2Programming Logic and Design, Seventh Edition

Understanding Computer Systems Computer system – Combination of all the components required to process and store data using a computer Hardware – Equipment associated with a computer Software – Computer instructions – Tells the hardware what to do – Programs Instructions written by programmers 3Programming Logic and Design, Seventh Edition

Understanding Computer Systems (continued) – Application software such as word processing, spreadsheets, payroll and inventory, even games – System software such as operating systems like Windows, Linux, or UNIX Computer hardware and software accomplish three major operations – Input Data items such as text, numbers, images, and sound – Processing Calculations and comparisons performed by the central processing unit (CPU) 4Programming Logic and Design, Seventh Edition

Understanding Computer Systems (continued) – Output Resulting information that is sent to a printer, a monitor, or storage devices after processing Programming language – Used to write computer instructions – Examples Visual Basic, C#, C++, or Java Syntax – Rules governing word usage and punctuation 5Programming Logic and Design, Seventh Edition

Understanding Computer Systems (continued) Computer memory – Computer’s temporary, internal storage – random access memory (RAM) – Volatile memory – lost when the power is off Permanent storage devices – Nonvolatile memory Compiler or interpreter – Translates source code into machine language (binary language) statements called object code – Checks for syntax errors 6Programming Logic and Design, Seventh Edition

Understanding Simple Program Logic Program executes or runs – Input will be accepted, some processing will occur, and results will be output Programs with syntax errors cannot execute Logical errors – Errors in program logic produce incorrect output Logic of the computer program – Sequence of specific instructions in specific order Variable – Named memory location whose value can vary 7Programming Logic and Design, Seventh Edition

Understanding the Program Development Cycle Program development cycle – Understand the problem – Plan the logic – Code the program – Use software (a compiler or interpreter) to translate the program into machine language – Test the program – Put the program into production – Maintain the program 8Programming Logic and Design, Seventh Edition

Understanding the Program Development Cycle (continued) 9 Figure 1-1 The program development cycle Programming Logic and Design, Seventh Edition

Understanding the Problem One of the most difficult aspects of programming Users or end users – People for whom a program is written Documentation – Supporting paperwork for a program 10Programming Logic and Design, Seventh Edition

Planning the Logic Heart of the programming process Most common planning tools – Flowcharts – Pseudocode – IPO charts (input, processing, and output) – TOE charts (tasks, objects, and events) Desk-checking – Walking through a program’s logic on paper before you actually write the program 11Programming Logic and Design, Seventh Edition

Coding the Program Hundreds of programming languages available – Choose based on features – Similar in their basic capabilities Easier than the planning step 12Programming Logic and Design, Seventh Edition

Using Software to Translate the Program into Machine Language Translator program – Compiler or interpreter – Changes the programmer’s English-like high-level programming language into the low-level machine language Syntax error – Misuse of a language’s grammar rules – Programmer corrects listed syntax errors – Might need to recompile the code several times 13Programming Logic and Design, Seventh Edition

Using Software to Translate the Program into Machine Language (continued) Figure 1-2 Creating an executable program 14Programming Logic and Design, Seventh Edition

Testing the Program Logical error – Results when a syntactically correct statement, but the wrong one for the current context, is used Test – Execute the program with some sample data to see whether the results are logically correct Debugging is the process of finding and correcting program errors Programs should be tested with many sets of data 15Programming Logic and Design, Seventh Edition

Putting the Program into Production Process depends on program’s purpose – May take several months Conversion – The entire set of actions an organization must take to switch over to using a new program or set of programs 16Programming Logic and Design, Seventh Edition

Maintaining the Program Maintenance – Making changes after the program is put into production Common first programming job – Maintaining previously written programs Make changes to existing programs – Repeat the development cycle 17Programming Logic and Design, Seventh Edition

Using Pseudocode Statements and Flowchart Symbols Pseudocode – English-like representation of the logical steps it takes to solve a problem Flowchart – Pictorial representation of the logical steps it takes to solve a problem 18Programming Logic and Design, Seventh Edition

Writing Pseudocode Pseudocode representation of a number-doubling problem start input myNumber set myAnswer = myNumber * 2 output myAnswer stop 19Programming Logic and Design, Seventh Edition

Writing Pseudocode (continued) Programmers preface their pseudocode with a beginning statement like start and end it with a terminating statement like stop Flexible planning tool 20Programming Logic and Design, Seventh Edition

Drawing Flowcharts Create a flowchart – Draw geometric shapes that contain the individual statements – Connect shapes with arrows Input symbol – Indicates input operation – Parallelogram Processing symbol – Contains processing statements such as arithmetic – Rectangle 21Programming Logic and Design, Seventh Edition

Drawing Flowcharts (continued) Output symbol – Represents output statements – Parallelogram Flowlines – Arrows that connect steps Terminal symbols – Start/stop symbols – Shaped like a racetrack – Also called lozenges 22Programming Logic and Design, Seventh Edition

Drawing Flowcharts (continued) Figure 1-6 Flowchart and pseudocode of program that doubles a number 23Programming Logic and Design, Seventh Edition

Repeating Instructions Program in Figure 1-6 only works for one number Not feasible to run the program over and over 10,000 times Not feasible to add 10,000 lines of code to a program Create a loop (repetition of a series of steps) instead Avoid an infinite loop (repeating flow of logic that never ends) 24Programming Logic and Design, Seventh Edition

Repeating Instructions (continued) Figure 1-8 Flowchart of infinite number-doubling program 25Programming Logic and Design, Seventh Edition

Using a Sentinel Value to End a Program Making a decision – Testing a value – Decision symbol Diamond shape Dummy value – Data-entry value that the user will never need – Sentinel value eof (“end of file”) – Marker at the end of a file that automatically acts as a sentinel 26Programming Logic and Design, Seventh Edition

Using a Sentinel Value to End a Program (continued) Figure 1-9 Flowchart of number-doubling program with sentinel value of 0 27Programming Logic and Design, Seventh Edition

Using a Sentinel Value to End a Program (continued) Figure 1-10 Flowchart using eof 28Programming Logic and Design, Seventh Edition

Understanding Programming and User Environments Many options for programming and user environments – Planning Flowchart Pseudocode – Coding Text editors – Executing Input from keyboard, mouse, microphone – Outputting Text, images, sound 29Programming Logic and Design, Seventh Edition

Understanding Programming Environments Use a keyboard to type program statements into an editor – Plain text editor Similar to a word processor but without as many features – Text editor that is part of an integrated development environment (IDE) Software package that provides an editor, a compiler, and other programming tools 30Programming Logic and Design, Seventh Edition

Understanding Programming Environments (continued) Figure 1-12 A C# number-doubling program in Visual Studio 31Programming Logic and Design, Seventh Edition

Understanding User Environments Command line – Location on your computer screen where you type text entries to communicate with the computer’s operating system Graphical user interface (GUI) – Allows users to interact with a program in a graphical environment 32Programming Logic and Design, Seventh Edition

Understanding User Environments (continued) Figure 1-13 Executing a number-doubling program in a command-line environment 33Programming Logic and Design, Seventh Edition

Understanding User Environments (continued) Figure 1-14 Executing a number-doubling program in a GUI environment 34Programming Logic and Design, Seventh Edition

Understanding the Evolution of Programming Models People have been writing modern computer programs since the 1940s Newer programming languages – Look much more like natural language – Are easier to use – Create self-contained modules or program segments that can be pieced together in a variety of ways 35Programming Logic and Design, Seventh Edition

Understanding the Evolution of Programming Models (continued) Major models or paradigms used by programmers – Procedural programming Focuses on the procedures that programmers create – Object-oriented programming Focuses on objects, or “things,” and describes their features (or attributes) and their behaviors – This text Focuses on procedural programming techniques 36Programming Logic and Design, Seventh Edition

Summary Hardware and software accomplish input, processing, and output Logic must be developed correctly Logical errors are much more difficult to locate than syntax errors Use flowcharts, pseudocode, IPO charts, and TOE charts to plan the logic Avoid infinite loops by testing for a sentinel value Use a text editor or an IDE to enter your program statements 37Programming Logic and Design, Seventh Edition