Problem Solving and Programming Concepts, 9/e, is a core or supplementary text for one-semester, freshman/sophomore-level introductory courses taken by programming majors in Problem Solving for Programmers, Problem Solving for Applications, any Computer Language Course, or Introduction to Programming.
Revised to reflect the most current issues in the programming industry, this widely adopted text emphasizes that problem solving is the same in all computer languages, regardless of syntax. Sprankle and Hubbard use a generic, non-language-specific approach to present the tools and concepts required when using any programming language to develop computer applications. Designed for students with little or no computer experience — but useful to programmers at any level — the text provides step-by-step progression and consistent in-depth coverage of topics, with detailed explanations and many illustrations.
Table of Contents: Table of Contents
Preface
UNIT ONE INTRODUCTION TO PROBLEM SOLVING AND PROGRAMMING
Chapter 1 General Problem-Solving Concepts
Problem Solving in Everyday Life
Types of Problems
Problem Solving with Computers
Difficulties with Problem Solving
Summary
New Terms
Questions
Problems
Chapter 2 Beginning Problem-Solving Concepts for the Computer
Constants and Variables
Data Types
How the Computer Stores Data
Functions
Operators
Expressions and Equations
Summary
New Terms
Questions
Problems
Chapter 3 Planning Your Solution
Communicating with the Computer
Organizing the Solution
Introduction to UML (Unified Modeling Language)
Using the Tools
Testing the Solution
Coding the Solution
Software Development Cycle
Summary
New Terms
Questions
Problems
UNIT ONE Supplementary Exercises
UNIT TWO LOGIC STRUCTURES
Chapter 4 An Introduction to Programming Structure
Pointers for Structuring a Solution
The Modules and Their Functions
Cohesion and Coupling
Local and Global Variables
Parameters
Return Values
Variable Names and the Data Dictionary
The Three Logic Structures
Summary
New Terms
Questions
Problems
Chapter 5 Problem Solving with the Sequential Logic Structure
Algorithm Instructions, Flowchart Symbols
The Sequential Logic Structure
Solution Development
Summary
Questions
Problems
Chapter 6 Problem Solving with Decisions
The Decision Logic Structure
Multiple If/Then/Else Instructions
Using Straight-Through Logic
Using Positive Logic
Using Negative Logic
Logic Conversion
Which Decision Logic?
Decision Tables
Putting It All Together
The Case Logic Structure
Codes
Putting It All Together
Another Putting It All Together
Summary
New Terms
Questions
Problems
Chapter 7 Problem Solving with Loops
The Loop Logic Structure
lncrementing
Accumulating
While/WhileEnd
Putting It All Together
Repeat/Until
Putting It All Together
Automatic-Counter Loop
Putting It All Together
Nested Loops
Indicators
Algorithm Instructions and Flowchart Symbols
Recursion
Summary
New Terms
Questions
Problems
UNIT TWO Supplementary Exercises
UNIT THREE DATA STRUCTURES
Chapter 8 Processing Arrays
Arrays
One-Dimensional Arrays
Putting It All Together
Two-Dimensional Arrays
Putting It All Together
Multidimensional Arrays
Table Look-Up Technique
The Pointer Technique
Putting It All Together
Summary
New Terms
Questions
Problems
Chapter 9 Sorting, Stacks, and Queues
Sorting Techniques
Stacks
Queues
Summary
New Terms
Questions
Problems
Chapter 10 File Concepts
Beginning File Concepts
Records as a Data Structure
Primary and Secondary Keys
Algorithm Instructions and Flowchart Symbols
Systems Flowcharts
Designing Records
Summary
New Terms
Questions
Problems
Chapter 11 Linked Lists
Creating Linked Lists
Examples of Adding Data to/Deleting Data from Linked Lists
Algorithms and Flowcharts to Add, Delete, and Access Data in a Linked List
Summary
New Terms
Questions
Problems
Chapter 12 Binary Trees
Creation of Binary Trees
Accessing Data in a Binary Tree
Traversal of Binary Trees
Summary
New Terms
Questions
Problems
UNIT THREE Supplementary Exercises
UNIT FOUR DATABASE MANAGEMENT SYSTEMS
Chapter 13 Database Management Systems
Why a DBMS?
DBMS Components
DBMS Models
Client-Server Model
DBMS Tasks
Summary
New Terms
Questions
Chapter 14 Relational Database Management Systems
Tables, Records, and Fields
Normalizing Tables
Entity Relation Model
Schema
Creating Tables
Queries
Interface Design
Reports
Planning a Solution Using an RDBMS
Summary
New Terms
Questions
Problems
UNIT FIVE OBJECT-ORIENTED PROGRAMMING
Chapter 15 Concepts of Object-Oriented Programming
Object-Oriented Programming
Graphical User Interface (GUI)
Event-Driven Object-Oriented Programming
Interactivity
Summary
New Terms
Questions
Problems
Chapter 16 Object-Oriented Program Design
Designing an Object-Oriented Application
Interface Design
Designing an Event-Driven Object-Oriented Application
Summary
New Terms
Questions
Problems
UNIT SIX INTRODUCTION TO GAME DEVELOPMENT
Chapter 17 Introduction to Concepts of Game Development Using Object-Oriented Programming
Game Development
Planning the Game
Steps to Develop a Simple Game
Summary
New Terms
Questions
Problems
Chapter 18 Introduction to Assembly Language
Assembly Language versus High-Level Languages
Assembly Language Concepts
Some Basic Assembly Language Instructions
Assembly Language Equivalents to the Four Logic Structures
Summary
New Terms
Questions
Problems
UNIT SEVEN FILE PROCESSING
Chapter 19 Sequential-Access File Applications
Processing Sequential-Access Files
The Primer Read
Designing Output Reports
Headings and Line Counters
Control-Breaks
Multiple Control-Breaks
Using Indicators for Program Control
Error Handling
Null Files
Summary
New Terms
Questions
Problems
Chapter 20 Sequential-Access File Updating
Creating Files
The Master File
Transaction Files
Activity Files
Backup Files
Updating the Master File Using a Transaction File
Putting It All Together
A Useful Alternative Method
Summary
New Terms
Questions
Problems
UNIT FIVE Supplementary Exercises
APPENDIX A Otto the Robot APPENDIX B ASCII and EBCDIC Codes for Data Representation APPENDIX C Forms to Use in Problem Solving APPENDIX D Other Problem-Solving Tools APPENDIX E Other Functions GLOSSARY INDEX