Note: Supplemental materials are not guaranteed with Rental or Used book purchases.
Purchase Benefits
What is included with this book?
Preface | p. xiii |
Acknowledgments | p. xxi |
About the Author | p. xxiii |
Introduction to Computers and Programming | p. 1 |
Introduction | p. 1 |
Hardware | p. 2 |
How Computers Store Data | p. 7 |
How a Program Works | p. 12 |
Types of Software | p. 20 |
Review Questions | p. 22 |
Input, Processing, and Output | p. 27 |
Designing a Program | p. 27 |
Output, Input, and Variables | p. 32 |
Variable Assignment and Calculations | p. 41 |
In The Spotlight: Calculating Cell Phone Overage Fees | p. 45 |
In The Spotlight: Calculating a Percentage | p. 47 |
In The Spotlight: Calculating an Average | p. 50 |
In The Spotlight: Converting a Math Formula to a Programming Statement | p. 53 |
Variable Declarations and Data Types | p. 56 |
Named Constants | p. 62 |
Hand Tracing a Program | p. 63 |
Documenting a Program | p. 64 |
In The Spotlight: Using Named Constants, Style Conventions, and Comments | p. 66 |
Designing Your First Program | p. 68 |
Review Questions | p. 71 |
Debugging Exercises | p. 76 |
Programming Exercises | p. 77 |
Modules | p. 79 |
Introduction to Modules | p. 79 |
Defining and Calling a Module | p. 82 |
In The Spotlight: Defining and Calling Modules | p. 88 |
Local Variables | p. 92 |
Passing Arguments to Modules | p. 94 |
In The Spotlight: Passing an Argument to a Module | p. 99 |
In The Spotlight: Passing an Argument by Reference | p. 104 |
Global Variables and Global Constants | p. 108 |
In The Spotlight: Using Global Constants | p. 109 |
Review Questions | p. 113 |
Debugging Exercises | p. 117 |
Programming Exercises | p. 117 |
Decision Structures and Boolean Logic | p. 121 |
Introduction to Decision Structures | p. 121 |
In The Spotlight: Using the if-Then Statement | p. 128 |
Dual Alternative Decision Structures | p. 131 |
In The Spotlight: Using the If-Then-Else Statement | p. 132 |
Comparing Strings | p. 137 |
Nested Decision Structures | p. 141 |
In The Spotlight: Multiple Nested Decision Structures | p. 144 |
The Case Structure | p. 148 |
In The Spotlight: Using a Case Structure | p. 151 |
Logical Operators | p. 153 |
Boolean Variables | p. 160 |
Review Questions | p. 161 |
Debugging Exercises | p. 165 |
Programming Exercises | p. 166 |
Repetition Structures | p. 169 |
Introduction to Repetition Structures | p. 169 |
Condition-Controlled Loops: while, Do-while, and Do-until | p. 170 |
In The Spotlight: Designing a While Loop | p. 175 |
In The Spotlight: Designing a Do-While Loop | p. 184 |
Count-Controlled Loops and the For Statement | p. 189 |
In The Spotlight: Designing a Count-Controlled Loop with the For Statement | p. 197 |
Calculating a Running Total | p. 207 |
Sentinels | p. 211 |
In The Spotlight: Using a Sentinel | p. 212 |
Nested Loops | p. 215 |
Review Questions | p. 218 |
Debugging Exercises | p. 222 |
Programming Exercises | p. 222 |
Functions | p. 225 |
Introduction to Functions: Generating Random Numbers | p. 225 |
In The Spotlight: Using Random Numbers | p. 229 |
In The Spotlight: Using Random Numbers to Represent Other Values | p. 231 |
Writing Your Own Functions | p. 233" |
In The Spotlight: Modularizing with Functions | p. 240 |
More Library Functions | p. 248 |
Review Questions | p. 259 |
Debugging Exercises | p. 261 |
Programming Exercises | p. 262 |
Input Validation | p. 267 |
Garbage In, Garbage Out | p. 267 |
The Input Validation Loop | p. 268 |
In The Spotlight: Designing an Input Validation Loop | p. 270 |
Defensive Programming | p. 275 |
Review Questions | p. 276 |
Debugging Exercises | p. 278 |
Programming Exercises | p. 279 |
Arrays | p. 281 |
Array Basics | p. 281 |
In The Spotlight: Using Array Elements in a Math Expression | p. 288 |
Sequentially Searching an Array | p. 295 |
Processing the Contents of an Array | p. 301 |
In The Spotlight: Processing an Array | p. 308 |
Parallel Arrays | p. 315 |
In The Spotlight: Using Parallel Arrays | p. 316 |
Two-Dimensional Arrays | p. 319 |
In The Spotlight: Using a Two-Dimensional Array | p. 323 |
Arrays of Three or More Dimensions | p. 328 |
Review Questions | p. 329 |
Debugging Exercises | p. 332 |
Programming Exercises | p. 333 |
Sorting and Searching Arrays | p. 337 |
The Bubble Sort Algorithm | p. 337 |
In The Spotlight: Using the Bubble Sort Algorithm | p. 344 |
The Selection Sort Algorithm | p. 351 |
The Insertion Sort Algorithm | p. 357 |
The Binary Search Algorithm | p. 363 |
In The Spotlight: Using the Binary Search Algorithm | p. 367 |
Review Questions | p. 369 |
Debugging Exercise | p. 373 |
Programming Exercises | p. 373 |
Files | p. 375 |
Introduction to File Input and Output | p. 375 |
Using Loops to Process Files | p. 387 |
In The Spotlight: Working with Files | p. 392 |
Using Files and Arrays | p. 396 |
Processing Records | p. 397 |
In The Spotlight: Adding and Displaying Records | p. 402 |
In The Spotlight: Searching for a Records | p. 406 |
In The Spotlight: Modifying Records | p. 408 |
In The Spotlight: Deleting Records | p. 412 |
Control Break Logic | p. 415 |
In The Spotlight: Using Control Break Logic | p. 417 |
Review Questions | p. 423 |
Debugging Exercise | p. 426 |
Programming Exercises | p. 426 |
Menu-Driven Programs | p. 429 |
Introduction to Menu-Driven Programs | p. 429 |
Modularizing a Menu-Driven Program | p. 440 |
Using a Loop to Repeat the Menu | p. 445 |
In The Spotlight: Designing a Menu-Driven Program | p. 450 |
Multiple-Level Menus | p. 464 |
Review Questions | p. 470 |
Programming Exercises | p. 472 |
Text Processing | p. 475 |
Introduction | p. 475 |
Character-by-Character Text Processing | p. 477 |
In The Spotlight: Validating a Password | p. 480 |
In The Spotlight: Formatting and Unformatting Telephone Numbers | p. 486 |
Review Questions | p. 491 |
Debugging Exercises | p. 493 |
Programming Exercises | p. 494 |
Recursion | p. 497 |
Introduction to Recursion | p. 497 |
Problem Solving with Recursion | p. 500 |
Examples of Recursive Algorithms | p. 504 |
Review Questions | p. 514 |
Programming Exercises | p. 517 |
Object-Oriented Programming | p. 519 |
Procedural and Object-Oriented Programming | p. 519 |
Classes | p. 523 |
Using the Unified Modeling Language to Design Classes | p. 534 |
Finding the Classes and Their Responsibilities in a Problem | p. 537 |
In The Spotlight: Finding the Classes in a Problem | p. 537 |
In The Spotlight: Determining Class Responsibilities | p. 541 |
Inheritance | p. 547 |
Polymorphism | p. 555 |
Review Questions | p. 559 |
Programming Exercises | p. 563 |
ÇU1 Applications and Event-Driven Programming | p. 565 |
Graphical User Interfaces | p. 565 |
Designing the User Interface for a GUI Program | p. 568 |
In The Spotlight: Designing a Window | p. 573 |
Writing Event Handlers | p. 575 |
In The Spotlight: Designing an Event Handler | p. 578 |
Review Questions | p. 580 |
Programming Exercises | p. 582 |
ASCII/Unicode Characters | p. 585 |
Flowchart Symbols | p. 587 |
Pseudocode Reference | p. 589 |
Answers to Checkpoint Questions (located on the CD that accompanies this book) | |
Index | p. 601 |
Table of Contents provided by Ingram. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.