Menu Expand
Problem Solving & Programming Concepts

Problem Solving & Programming Concepts

Maureen Sprankle | Jim Hubbard

(2014)

Additional Information

Book Details

Abstract

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.

 

Instructor Supplements (see resources tab):

Instructor Manual with Solutions and Test Bank

Lecture Power Point Slides

 

Go to: www.pearsoninternationaleditions.com/sprankle

Table of Contents

Section Title Page Action Price
Cover Cover
Contents 5
Preface 9
UNIT ONE: INTRODUCTION TO PROBLEM SOLVING AND PROGRAMMING 13
Chapter 1 General Problem-Solving Concepts 15
Problem Solving in Everyday Life 15
Types of Problems 17
Problem Solving with Computers 18
Difficulties with Problem Solving 18
Summary 19
New Terms 19
Questions 19
Problems 20
Chapter 2 Beginning Problem-Solving Concepts for the Computer 23
Constants and Variables 25
Data Types 28
How the Computer Stores Data 32
Functions 33
Operators 35
Expressions and Equations 39
Summary 46
New Terms 47
Questions 47
Problems 49
Chapter 3 Planning Your Solution 53
Communicating with the Computer 54
Organizing the Solution 55
Introduction to UML (Unified Modeling Language) 67
Using the Tools 71
Testing the Solution 73
Coding the Solution 73
Software Development Cycle 74
Summary 74
New Terms 75
Questions 75
Problems 75
UNIT ONE: Supplementary Exercises 77
UNIT TWO: LOGIC STRUCTURES 81
Chapter 4 An Introduction to Programming Structure 83
Pointers for Structuring a Solution 84
The Modules and Their Functions 86
Cohesion and Coupling 87
Local and Global Variables 89
Parameters 91
Return Values 96
Variable Names and the Data Dictionary 97
The Three Logic Structures 97
Summary 98
New Terms 98
Questions 99
Problems 99
Chapter 5 Problem Solving with the Sequential Logic Structure 101
Algorithm Instructions, Flowchart Symbols, and Pseudocode 101
The Sequential Logic Structure 104
Solution Development 106
Summary 113
Questions 114
Problems 114
Chapter 6 Problem Solving with Decisions 117
The Decision Logic Structure 118
Multiple If/Then/Else Instructions 120
Using Straight-Through Logic 122
Using Positive Logic 123
Using Negative Logic 127
Logic Conversion 129
Which Decision Logic? 132
Decision Tables 132
Putting It All Together 139
The Case Logic Structure 147
Codes 149
Putting It All Together 150
Another Putting It All Together 152
Summary 153
New Terms 154
Questions 154
Problems 155
Chapter 7 Problem Solving with Loops 161
The Loop Logic Structure 162
lncrementing 163
Accumulating 163
While/WhileEnd 164
Putting It All Together 166
Repeat/Until 166
Putting It All Together 169
Automatic-Counter Loop 171
Putting It All Together 175
Nested Loops 175
Indicators 178
Algorithm Instructions and Flowchart Symbols 179
Recursion 181
Summary 181
New Terms 186
Questions 186
Problems 186
UNIT TWO: Supplementary Exercises 189
UNIT THREE: DATA STRUCTURES 191
Chapter 8 Processing Arrays 193
Arrays 194
One-Dimensional Arrays 196
Putting It All Together 201
Two-Dimensional Arrays 203
Putting It All Together 211
Multidimensional Arrays 220
Table Look-Up Technique 221
The Pointer Technique 225
Putting It All Together 238
Summary 247
New Terms 247
Questions 247
Problems 248
Chapter 9 Sorting, Stacks, and Queues 251
Sorting Techniques 252
Stacks 259
Queues 260
Summary 264
New Terms 264
Questions 264
Problems 265
Chapter 10 File Concepts 267
Beginning File Concepts 268
Records as a Data Structure 268
Primary and Secondary Keys 268
Algorithm Instructions and Flowchart Symbols 268
Systems Flowcharts 271
Designing Records 271
Summary 275
New Terms 275
Questions 275
Problems 275
Chapter 11 Linked Lists 277
Creating Linked Lists 277
Examples of Adding Data to/Deleting Data from Linked Lists 278
Algorithms and Flowcharts to Add, Delete, and Access Data in a Linked List 283
Summary 296
New Terms 296
Questions 296
Problems 296
Chapter 12 Binary Trees 299
Creation of Binary Trees 300
Accessing Data in a Binary Tree 302
Traversal of Binary Trees 306
Summary 308
New Terms 308
Questions 308
Problems 308
UNIT THREE: Supplementary Exercises 309
UNIT FOUR: DATABASE MANAGEMENT SYSTEMS 311
Chapter 13 Database Management Systems 313
Why a DBMS? 314
DBMS Components 315
DBMS Models 316
Client Server Model 317
DBMS Tasks 318
Summary 319
New Terms 320
Questions 320
Chapter 14 Relational Database Management Systems 321
Tables, Records, and Fields 322
Normalizing Tables 323
Entity Relation Model (ERM) 327
Schema 330
Creating Tables 330
Queries 332
Interface Design 334
Reports 335
Planning a Solution Using an RDBMS 335
Summary 344
New Terms 344
Questions 345
Problems 345
UNIT FIVE: OBJECT-ORIENTED PROGRAMMING 347
Chapter 15 Concepts of Object-Oriented Programming 349
Object-Oriented Programming 350
Graphical User Interface (GUI) 360
Event-Driven Object-Oriented Programming 360
Interactivity 363
Summary 363
New Terms 364
Questions 364
Problems 365
Chapter 16 Object-Oriented Program Design 367
Using UML as a Design Tool 368
Designing an Object-Oriented Application 374
Interface Design 383
Summary 391
New Terms 392
Questions 392
Problems 393
UNIT SIX: INTRODUCTION TO GAME DEVELOPMENT 395
Chapter 17 Introduction to Concepts of Game Development Using Object-Oriented Programming 397
Game Development 398
Planning the Game 398
Steps to Develop a Simple Game 399
Summary 400
New Terms 400
Questions 400
Problems 400
Chapter 18 Introduction to Assembly Language 403
Assembly Language Versus High-Level Languages 404
Assembly Language Concepts 404
Some Basic Assembly Language Instructions 404
Assembly Language Equivalents to the Four Logic Structures 405
Summary 407
New Terms 407
Questions 407
Problems 407
UNIT SEVEN: FILE PROCESSING 409
Chapter 19 Sequential-Access File Applications 411
Processing Sequential-Access Files 413
The Primer Read 413
Designing Output Reports 415
Headings and Line Counters 415
Control-Breaks 421
Multiple Control-Breaks 425
Using Indicators for Program Control 427
Error Handling 432
Null Files 434
Summary 442
New Terms 443
Questions 443
Problems 443
Chapter 20 Sequential-Access File Updating 445
Creating Files 446
The Master File 447
Transaction Files 447
Activity Files 447
Backup Files 447
Updating the Master File Using a Transaction File 447
Putting It All Together 454
A Useful Alternative Method 464
Summary 469
New Terms 469
Questions 469
Problems 469
UNIT SEVEN: Supplementary Exercises 471
APPENDIX A: Otto the Robot 473
APPENDIX B: ASCII and EBCDIC Codes for Data Representation 481
APPENDIX C: Forms to Use in Problem Solving 485
APPENDIX D: Other Problem-Solving Tools 505
APPENDIX E: Other Functions 509
GLOSSARY 511
A 511
B 511
C 512
D 513
E 513
F 514
G 514
H 514
I 514
K 515
L 515
M 515
N 515
O 515
P 516
Q 517
R 517
S 517
T 518
U 518
V 518
W 518
INDEX 519
A 519
B 519
C 519
D 519
E 519
F 519
G 520
H 520
I 520
K 520
L 520
M 520
N 520
O 520
P 520
Q 521
R 521
S 521
T 521
U 521
V 521
W 521