Starting Out with Programming Logic and Design
by Gaddis, TonyBuy Used
Rent Textbook
New Textbook
We're Sorry
Sold Out
eTextbook
We're Sorry
Not Available
How Marketplace Works:
- This item is offered by an independent seller and not shipped from our warehouse
- Item details like edition and cover design may differ from our description; see seller's comments before ordering.
- Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
- Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
- Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.
Summary
Author Biography
Table of Contents
| 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. |
An electronic version of this book is available through VitalSource.
This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.
By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.
A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.
Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.
Please view the compatibility matrix prior to purchase.
