Both the Concise
and the Extended Prelude to Programming: Concepts
and Design, Second Edition, are intended for
use in a language-independent, introductory programming course. The purpose of
the text is, in a language-free context, to help students learn
General programming topics, such as the use of
data types, control structures, files, arrays, and subprograms.
Structured programming principles, such as
top-down modular design and proper program documentation and style.
How to use certain basic tools and algorithms,
such as data validation, defensive programming, calculating sums and averages,
and searching and sorting lists.
About other programming paradigms, such as
object-oriented and event-driven programming.
No prior experience with computers or programming
is necessary, nor is any special knowledge of mathematics, finance, or any other
Table of Contents
versions include these chapters:
A Brief History of Computers
Software and Programming Languages
An Introduction to Programming
1.1 What Is Programming?
1.2 Basic Programming Concepts
1.3 Data Processing and Output
1.4 Data Types
Developing a Program
2.1 The Program Development Cycle
2.2 Program Design
2.3 Coding, Documenting, and Testing a Program
2.4 Structured Programming
2.5 An Introduction to GUIs and OOP
Selection Structures: Making 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
Repetition Structures: Looping
4.1 An Introduction to Repetition Structures
4.2 Counter-controlled Loops
4.3 Applications of Repetition Structures
4.4 Nested Loops
4.5 Focus on Problem Solving
Chapter 5 Sequential Data
5.1 Sequential File Basics
5.2 Modifying a Sequential File
5.3 Merging Sequential Files
5.4 Focus on Problem Solving
Chapter 6 Arrays: Lists
6.1 One-dimensional Arrays
6.2 Searching and Sorting Arrays
6.3 Other Uses of Arrays
6.4 Two-dimensional Arrays
Focus on Problem Solving
Second Edition, has these three additional chapters:
More on Program Modules and Subprograms
7.1 Data Flow Diagrams and Parameters
7.2 More on Subprograms
7.5 Focus on Problem Solving
More on OOP and GUIs
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
9.1 Random Numbers
9.2 The ASCII Code
9.3 More on Sorting and Searching
9.4 An Introduction to Direct-Access Files
More on Direct-Access Files
The first four chapters should
be covered prior to any of the others, but Chapters 3 and 4 are independent of
one another, and may be taught in either order. Similarly, once the core
material (Chapters 1–6) has been covered, Chapter 7, 8, or 9 could be presented
next. (We recommend, however, that Section 7.1 be considered a prerequisite for
Chapter 8 and that Section 7.5 be read prior to Section 8.5.) Chapter 9 consists
of four separate topics, and any of these can be skipped without affecting the
Many sections throughout the
text are optional as well, and may be omitted if so desired. In particular, the
sections entitled Focus on Problem Solving develop relatively complex
program designs, which some instructors may find useful to illustrate the
chapter material and others may elect to skip to save time. Many other sections
contain special and/or advanced material, and may be skipped as well at the
discretion of the instructor.
Click for more details.
Changes in the Second Edition
The second edition has been
revised throughout to provide a better vehicle for both teaching and learning
the concepts of programming. The major changes are:
The number of exercises has been increased substantially. In particular,
the number of Review Exercises has grown by 25% (to 406) and the number of
Reading Check exercises and Programming Problems have been increased as well (to
194 and 66, respectively).
Chapter 1 has been completely revised. The three-section “introduction
to computers” that began the first edition has been moved to a self-contained
Introduction in the second edition. Moreover, material has been added in the new
Chapter 1 to provide a gentler introduction to programming and more information
about data types and declaring variables.
The beginning of Chapter 2 has been rewritten to explain the concept of
the program development cycle in more detail and with greater clarity.
Selection structures (Chapter 3) are now covered before repetition
structures (Chapter 4). In fact, these two chapters are now virtually
independent of one another, and may be taught in either order.
Chapter 5 of the first edition covered several topics, including sequential data
files. The new Chapter 5 is devoted solely to sequential files.
This change enhances the independence of Chapters 5 and 6, so that arrays may be
taught prior to data files if so desired.
The last chapter of the second edition contains four independent topics
(random numbers, the ASCII code, additional searching and sorting techniques,
and direct-access files), any of which may be inserted into the course at the
appropriate point as time and inclination permit.
A Study Skills feature has been added to the second edition. This
feature, which is located within the summary for every chapter, provides
guidelines to improve the student’s study skills in various ways. Each chapter’s
Study Skills has a different theme; for example, Getting the Most Out of
Class, Writing Programs, Using the Textbook,
and so on.
Click for sample study skills.
Concise Prelude to Programming, Second Edition,
ISBN 1-57676-116-9, 220 pages
Extended Prelude to Programming, Second Edition,
ISBN 1-57676-132-0, 420 pages