0 Introduction
0.1 Computers Everywhere
0.2 A Brief History of Computers
0.3 Computer Basics
0.4 Software and Programming Languages
Chapter Review and Exercises
1 An Introduction to Programming
In the Everyday World
You Are Already a Programmer!
1.1 What Is Programming?
1.2 Basic Programming Concepts
1.3 Data Processing and Output
1.4 Types of Data
Chapter Review and Exercises
2 Developing a Program
In the Everyday World
Planning to Program? You Need a Plan
2.1 The Program Development Cycle
2.2 Program Design
2.3 Coding, Documenting, and Testing a Program
2.4 Commercial Programs: Testing and Documenting
2.5 Structured Programming
2.6 An Introduction to OOP and GUIs
Chapter Review and Exercises
3 Selecting Structure: Making Decisions
In the Everyday World
Decisions, decisions, decisions . . .
3.1 An Introduction to Selection Structures
3.2 Relational and Logical Operators
3.3 Selecting from Several Alternatives
3.4 Applications of Selection Structures
3.5 Focus on Problem Solving: A New Car Price Calculator
Chapter Review and Exercises
4 Repetition Structures: Looping
In the Everyday World
Loops
4.1 An Introduction to Repetition Structures: Computers Never Get Bored!
4.2 Counter-Controlled Loops
4.3 Applications of Repetition Structures
4.4 Nested Loops
4.5 Focus on Problem Solving: A Cost, Revenue, and Profit Problem
Chapter Review and Exercises
5 Arrays: Lists and Tables
In the Everyday World
Arrays
5.1 One-Dimensional Arrays
5.2 Searching and Sorting Arrays
5.3 Other Uses of Arrays
5.4 Two-Dimensional Arrays
5.5 Focus on Problem Solving: An Invoice Preparation Program
Chapter Review and Exercises
6 Sequential Data Files
In the Everyday World
Data Files
6.1 An Introduction to Data Files
6.2 Modifying a Sequential File
6.3 Merging Sequential Files
6.4 Focus on Problem Solving: Control Break Processing
Chapter Review and Exercise
7 More about Program Modules and Subprograms
In the Everyday World
Subprograms
7.1 Data Flow Diagrams and Parameters
7.2 More on Subprograms
7.3 Functions
7.4 Recursion
7.5 Focus on Problem Solving: A Grade Management Problem
Chapter Review and Exercises
8 More about OOP and GUIs
In the Everyday World
Objects
8.1 Classes and Objects
8.2 More on Object-Oriented Programming
8.3 Graphical User Interfaces Revisited
8.4 Event-Driven Programming
8.5 Focus on Problem Solving: The Grade Management Program Revisited
Chapter Review and Exercises
9 More about Data, Arrays, and Files
In the Everyday World
The Tools You Need
9.1 Random Numbers
9.2 ASCII Code
9.3 More on Searching and Sorting
9.4 An Introduction to Direct-Access Files2
9.5 Using Direct-Access Files: Indexed Files
Chapter Review and Exercises
Study Skills
Glossary
Index