Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programming Logic and Design Fifth Edition, Comprehensive

Similar presentations


Presentation on theme: "Programming Logic and Design Fifth Edition, Comprehensive"— Presentation transcript:

1 Programming Logic and Design Fifth Edition, Comprehensive
Chapter 1 An Overview of Computers and Logic

2 Objectives Understand computer components and operations
Learn about the steps involved in the programming process Learn about the data hierarchy and file input Use flowchart symbols and pseudocode statements Use and name variables Programming Logic and Design, Fifth Edition, Comprehensive

3 Objectives (continued)
Use a sentinel, or dummy value, to end a program Manage large flowcharts Assign values to variables Recognize the proper format of assignment statements Describe data types Understand the evolution of programming techniques Programming Logic and Design, Fifth Edition, Comprehensive

4 Understanding Computer Components and Operations
Hardware and software: the two major components of any computer system Hardware: equipment, or devices Software: programs that contain instructions for the computer Four major operations in a computer: Input Processing Output Storage Programming Logic and Design, Fifth Edition, Comprehensive

5 Understanding Computer Components and Operations (continued)
Input devices: allow data to enter the computer Mouse, keyboard, scanner Processing: working on the data Organizing data Checking data for accuracy Mathematical or other manipulations on data Central Processing Unit (CPU): hardware that performs the tasks Programming Logic and Design, Fifth Edition, Comprehensive

6 Understanding Computer Components and Operations (continued)
Output devices: provide data to the user Printer, monitor, speakers Programming language: special language containing instructions for the computer Visual Basic, Java, C#, C++, COBOL Syntax: rules governing word usage and punctuation in the language Programming Logic and Design, Fifth Edition, Comprehensive

7 Understanding Computer Components and Operations (continued)
Machine language: controls the computer’s on/off circuitry Compiler or interpreter: software that translates programming languages to machine language Program must be free of syntax errors to be run, or executed, on a computer To function properly, the logic must be correct Programming Logic and Design, Fifth Edition, Comprehensive

8 Understanding Computer Components and Operations (continued)
What is wrong with this logic for making a cake? Stir Add two eggs Bake at 350 degrees for 45 minutes Add three cups of flour Programming Logic and Design, Fifth Edition, Comprehensive

9 Understanding Computer Components and Operations (continued)
Logic errors, or semantic errors, are more difficult to locate than syntax errors Logic for multiplying a number by 2 (includes input, processing, and output statements) Get input number. Compute calculated answer as inputNumber times 2. Print calculatedAnswer. Programming Logic and Design, Fifth Edition, Comprehensive

10 Understanding Computer Components and Operations (continued)
Two storage categories: internal and external Internal storage: Main memory, random access memory (RAM) Located inside the computer system Volatile: contents are lost when power goes down External storage: Persistent: contents are relatively permanent Floppy drive, hard drive, flash media, magnetic tape Located outside the computer system Programming Logic and Design, Fifth Edition, Comprehensive

11 Understanding the Programming Process
Six programming phases: Understand the problem Plan the logic Code the program Use software to translate the program to machine language Test the program Put the program into production Programming Logic and Design, Fifth Edition, Comprehensive

12 Understanding the Problem
May be the most difficult phase Users may not be able to articulate their needs well User needs may be changing frequently Programmers may have to learn the user’s functional job tasks Failure to understand the problem is the major cause of most project failures Programming Logic and Design, Fifth Edition, Comprehensive

13 Planning the Logic Plan the steps that the program will take
Use tools such as flowcharts and pseudocode Flowchart: a pictorial representation of the logic steps Pseudocode: Natural language representation of the logic Walk through the logic before coding by desk-checking the logic Programming Logic and Design, Fifth Edition, Comprehensive

14 Coding the Program Select the programming language
Some languages more efficient for certain tasks All languages handle input, arithmetic processing, output, other standard functions Logic can be executed in any number of languages Write the instructions Planning generally more difficult than coding Programming Logic and Design, Fifth Edition, Comprehensive

15 Using Software to Translate the Program into Machine Language
Programmers write instructions in high-level languages that resemble a natural language Compilers or interpreters change the programs into a low-level machine language that can be executed Syntax errors are identified by the compiler or interpreter Programming Logic and Design, Fifth Edition, Comprehensive

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

17 Testing the Program Execute it with sample data and check results
Identify logic errors and correct them Choose test data carefully to exercise all branches of the logic Programming Logic and Design, Fifth Edition, Comprehensive

18 Putting the Program into Production
Might mean simply running the program once Process might take months if program is used on regular basis or is part of larger development Train data-entry people and users Change existing data Conversion: entire set of actions organization must take to switch over to new program(s) Programming Logic and Design, Fifth Edition, Comprehensive

19 Understanding Interactive User Input
Prompt: message displayed on a monitor Asks the user for a response Command prompt: location to type entries to communicate with the operating system Graphical User Interface (GUI): allows users to interact with a program in a graphical environment Programming Logic and Design, Fifth Edition, Comprehensive

20 Understanding Interactive User Input (continued)
Figure 1-2 A prompt, response, and output in a command line environment Programming Logic and Design, Fifth Edition, Comprehensive

21 Understanding Interactive User Input (continued)
Figure 1-3 A prompt, response, and output in a GUI environment Programming Logic and Design, Fifth Edition, Comprehensive

22 Understanding the Data Hierarchy and File Input
Data hierarchy: ordering of data types by size Character: single symbol “A”, “7”, “$” Field: group of characters forming a single data item “Smith” Record: a group of related fields Customer record containing name and address fields File: a group of related records Customer file, containing all customer records Database: collection of related files, called tables, that serve the information needs of the organization Programming Logic and Design, Fifth Edition, Comprehensive

23 Understanding the Data Hierarchy and File Input (continued)
Figure 1-4 The data hierarchy Programming Logic and Design, Fifth Edition, Comprehensive

24 Understanding the Data Hierarchy and File Input (continued)
Figure 1-5 The EMPLOYEE file represented as a stack of index cards Programming Logic and Design, Fifth Edition, Comprehensive

25 Using Flowchart Symbols and Pseudocode Statements
Flowchart: pictorial representation of the logic Pseudocode: English-like representation of the logic Example: start get inputNumber compute calculatedAnswer as inputNumber times 2 print calculatedAnswer stop Programming Logic and Design, Fifth Edition, Comprehensive

26 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure 1-6 Input symbol Programming Logic and Design, Fifth Edition, Comprehensive

27 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure 1-7 Processing symbol Programming Logic and Design, Fifth Edition, Comprehensive

28 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure 1-8 Output symbol Programming Logic and Design, Fifth Edition, Comprehensive

29 Using Flowchart Symbols and Pseudocode Statements (continued)
Flowlines: Connect the steps Show the sequence of statements Have arrows to show the direction Terminal symbol (start/stop symbol): Shows the start and end points of the statements Lozenge shape Programming Logic and Design, Fifth Edition, Comprehensive

30 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure 1-9 Flowchart and pseudocode of program that doubles a number Programming Logic and Design, Fifth Edition, Comprehensive

31 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure Inefficient pseudocode for program that doubles 10,000 numbers Programming Logic and Design, Fifth Edition, Comprehensive

32 Using Flowchart Symbols and Pseudocode Statements (continued)
Figure Flowchart of infinite number-doubling program Programming Logic and Design, Fifth Edition, Comprehensive

33 Using and Naming Variables
Variable: a memory location whose contents can vary; also called an identifier Each programming language has its own rules for naming identifiers, including: Legal characters Maximum length Use of upper- or lowercase Variable name must be a single word, but can be formed from several words rate, interestRate, interest_rate Programming Logic and Design, Fifth Edition, Comprehensive

34 Using and Naming Variables (continued)
Choose meaningful names for variables Improves the readability and maintainability of code Table 1-1 Suitability of suggested variable names for an employee’s last name Programming Logic and Design, Fifth Edition, Comprehensive

35 Ending a Program by Using Sentinel Values
Infinite loop: a sequence of statements that repeats forever with no escape Avoid infinite loops by testing for a predetermined value that means “stop processing” Decision: testing a value Flowchart decision symbol: a diamond shape with two flowlines, one for Yes and one for No Programming Logic and Design, Fifth Edition, Comprehensive

36 Ending a Program by Using Sentinel Values (continued)
Figure Flowchart of number-doubling program with sentinel value of 0 Programming Logic and Design, Fifth Edition, Comprehensive

37 Ending a Program by Using Sentinel Values (continued)
Sentinel value (or dummy value) Does not represent real data Signal to stop Can be used with input from files or from users End-of-file (EOF) marker: Code stored in the file that marks the end of the data Usually used instead of a sentinel value for file input Programming Logic and Design, Fifth Edition, Comprehensive

38 Ending a Program by Using Sentinel Values (continued)
Figure Flowchart using eof Programming Logic and Design, Fifth Edition, Comprehensive

39 Managing Large Flowcharts
Flowchart connector symbol: Marks a logic transfer to another location in the flowchart Transfer location can be on the same page or on another page On-page symbol: a circle with a number or letter to identify the matching transfer location Off-page symbol: a square with a pointed bottom, containing page number and a number of letter to identify the matching transfer location Programming Logic and Design, Fifth Edition, Comprehensive

40 Managing Large Flowcharts (continued)
Figure Flowchart using the connector Programming Logic and Design, Fifth Edition, Comprehensive

41 Assigning Values to Variables
Assignment statement: Assigns a value to a variable Variable must appear on the left side, value on the right side of the assignment operator Right side may be an expression that will be evaluated before storing the value in the variable Assignment operator: the equal sign (=) in most languages Variable: Memory location: has an address and a value Value (contents) is used for various operations Programming Logic and Design, Fifth Edition, Comprehensive

42 Understanding Data Types
Two basic data types: Text Numeric Numeric data stored by numeric variables Text data stored by string, text, or character variables Constants: Values that do not change while the program is running Have identifiers, and can be used like variables for calculations, but cannot be assigned new values Programming Logic and Design, Fifth Edition, Comprehensive

43 Understanding Data Types (continued)
Some programming languages implement several numeric data types, such as: Integer: whole numbers only Floating-point: fractional numeric values with decimal points Character or string data is represented as characters enclosed in quotation marks “x”, “color” Data types must be used appropriately Programming Logic and Design, Fifth Edition, Comprehensive

44 Understanding Data Types (continued)
Table 1-2 Some examples of legal and illegal assignments Programming Logic and Design, Fifth Edition, Comprehensive

45 Understanding the Evolution of Programming Techniques
Programming began in the 1940s, using memory addresses and machine code directly Higher-level languages were developed to allow English-like instructions Older programs were “monolithic,” and ran from beginning to end Newer programs contain modules that can be combined to form programs Programming Logic and Design, Fifth Edition, Comprehensive

46 Understanding the Evolution of Programming Techniques (continued)
Two major programming techniques: Procedural programming Object-oriented programming Procedural programming: focuses on the procedures that programmers create Object-oriented programming: focuses on objects that represent real-world things and their attributes and behaviors Both techniques employ reusable program modules Programming Logic and Design, Fifth Edition, Comprehensive

47 Summary Four major computer operations: Six programming phases: Input
Processing Output Storage Six programming phases: Understand the problem Plan the logic Code the program Translate the program to machine language Test the program Deploy the program Programming Logic and Design, Fifth Edition, Comprehensive

48 Summary (continued) Data hierarchy:
Character Field Record File Database Flowchart: pictorial representation of program logic Variables: named memory locations that contain values Programming Logic and Design, Fifth Edition, Comprehensive

49 Summary (continued) Testing a value involves making a decision
Assignment statements: store a value into a variable Assignment operator: the equal (=) sign in most languages Programming Logic and Design, Fifth Edition, Comprehensive

50 Summary (continued) Two major data types: text and numeric
Procedural programming: focuses on actions performed on data Object-oriented programming: focuses on representing and manipulating objects Programming Logic and Design, Fifth Edition, Comprehensive


Download ppt "Programming Logic and Design Fifth Edition, Comprehensive"

Similar presentations


Ads by Google