Documente Academic
Documente Profesional
Documente Cultură
An Introduction to
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 2
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 3
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
Processing
Calculations and comparisons performed by the
central
unit
2013 Cengage Learning. All
Rights Reserved.processing
This edition is intended for use
outside of(CPU)
the U.S. only, with content 4
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 5
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding Computer
Systems (continued)
Computer memory
Computers temporary, internal storage
random access memory (RAM)
Volatile memory lost when the power is of
Compiler or interpreter
Translates source code into machine
language (binary language) statements
called object code
Checks for syntax errors
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 6
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding Simple
Program Logic
Program executes or runs
Input will be accepted, some processing will
occur, and results will be output
Variable
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 7
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 8
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Documentation
Supporting paperwork for a program
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 10
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Flowcharts
Pseudocode
IPO charts (input, processing, and output)
TOE charts (tasks, objects, and events)
Desk-checking
Walking through a programs logic on paper
before you actually write the program
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 11
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 12
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Syntax error
Misuse of a languages grammar rules
Programmer corrects listed syntax errors
Might need to recompile the code several
times
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 13
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 14
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Test
Execute the program with some sample data to
see whether the results are logically correct
Conversion
The entire set of actions an organization must
take to switch over to using a new program or
set of programs
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 16
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 17
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 18
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Writing Pseudocode
Pseudocode representation of a numberdoubling problem
start
input myNumber
set myAnswer = myNumber * 2
output myAnswer
stop
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 19
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 20
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 21
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 22
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Drawing Flowcharts
(continued)
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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)
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 24
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Repeating Instructions
(continued)
Dummy value
Data-entry value that the user will never need
Sentinel value
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 27
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 29
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 30
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding
Programming Environments
(continued)
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding User
Environments
Command line
Location on your computer screen where you
type text entries to communicate with the
computers operating system
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 32
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding User
Environments (continued)
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 33
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Understanding User
Environments (continued)
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 34
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 35
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
Object-oriented programming
Focuses on objects, or things, and describes their
features (or attributes) and their behaviors
This text
Focuses on procedural programming techniques
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content 36
that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.
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
37
program statements
2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from
the U.S. Edition. May not be scanned, copied, duplicated, or posted to a publicly accessible website, in whole or in part.