Programming Logic and Design Fifth Edition, Comprehensive - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

Programming Logic and Design Fifth Edition, Comprehensive

Description:

Programming Logic and Design Fifth Edition, Comprehensive Chapter 1 An Overview of Computers and Logic ... – PowerPoint PPT presentation

Number of Views:162
Avg rating:3.0/5.0
Slides: 51
Provided by: hccflEdum47
Category:

less

Transcript and Presenter's Notes

Title: Programming Logic and Design Fifth Edition, Comprehensive


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

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

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

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

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

7
Understanding Computer Components and Operations
(continued)
  • Machine language controls the computers 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

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

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.

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

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

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 users
    functional job tasks
  • Failure to understand the problem is the major
    cause of most project failures

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

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

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

16
Using Software to Translate the Program into
Machine Language (continued)
Figure 1-1 Creating an executable program
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

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)

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

20
Understanding Interactive User Input (continued)
Figure 1-2 A prompt, response, and output in a
command line environment
21
Understanding Interactive User Input (continued)
Figure 1-3 A prompt, response, and output in a
GUI environment
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

23
Understanding the Data Hierarchy and File Input
(continued)
Figure 1-4 The data hierarchy
24
Understanding the Data Hierarchy and File Input
(continued)
Figure 1-5 The EMPLOYEE file represented as a
stack of index cards
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

26
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-6 Input symbol
27
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-7 Processing symbol
28
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-8 Output symbol
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

30
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-9 Flowchart and pseudocode of program
that doubles a number
31
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-10 Inefficient pseudocode for program
that doubles 10,000 numbers
32
Using Flowchart Symbols and Pseudocode Statements
(continued)
Figure 1-11 Flowchart of infinite
number-doubling program
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

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 employees last name
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

36
Ending a Program by Using Sentinel Values
(continued)
Figure 1-12 Flowchart of number-doubling program
with sentinel value of 0
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

38
Ending a Program by Using Sentinel Values
(continued)
Figure 1-13 Flowchart using eof
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

40
Managing Large Flowcharts (continued)
Figure 1-14 Flowchart using the connector
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

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

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

44
Understanding Data Types (continued)
Table 1-2 Some examples of legal and illegal
assignments
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

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

47
Summary
  • Four major computer operations
  • 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

48
Summary (continued)
  • Data hierarchy
  • Character
  • Field
  • Record
  • File
  • Database
  • Flowchart pictorial representation of program
    logic
  • Variables named memory locations that contain
    values

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

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
Write a Comment
User Comments (0)
About PowerShow.com