Preface1 Program DesignThis Chapter Describes the Steps in the Program Development Process, Explains Structured Programming, and Introduces Algorithms and Pseudocode 1.1 Steps in Program Development 1.2 Structured Programming 1.3 An Introduction to Algorithms and Pseudocode 1.4 Chapter Summary2 Pseudocode and Nassi-Schneiderman DiagramsThis Chapter Introduces the Common Words and Keywords Used When Writing Pseudocode. The Structure Theorem is Introduced, and the Three Basic Control Structures Established. Pseudocode and Nassi-Schneiderman Diagrams are Used to Represent Each Control Structure 2.1 How to Write Pseudocode 2.2 The Structure Theorem 2.3 Chapter Summary3 Developing an AlgorithmThis Chapter Introduces Methods of Analyzing a Problem and Developing a Solution. Simple Algorithms Which Use the Sequence Control Structure are Developed, and Methods of Manually Checking the Algorithm are Determined 3.1 Defining the Problem 3.2 Designing a Solution Algorithm 3.3 Checking the Solution Algorithm 3.4 Chapter Summary 3.5 Programming Problems4 Selection Control StructuresThis Chapter Expands the Selection Control Structure by Introducing Multiple Selection, Nested Selection, and the Case Construct in Solution Algorithms. Several Algorithms, Using Variations of the Selection Control Structure, are Developed 4.1 The Selection Control Structure 4.2 Programming Examples Using Selection 4.3 The Case Structure 4.4 Chapter Summary 4.5 Programming Problems5 Repetition Control StructuresThis Chapter Develops Algorithms which Use the Repetition Control Structure in the Form of DOWHILE, REPEAT..UNTIL, and Counted Repetition Loops 5.1 Repetition Using the DOWHILE Structure 5.2 Repetition Using the REPEAT..UNTIL Structure 5.3 Counted Repetition Constructs 5.4 Chapter Summary 5.5 Programming Problems6 Pseudocode Algorithms Using Sequence, Selection and RepetitionThis Chapter Develops Algorithms to Eight Simple Programming Problems, Which Use Combinations of Sequence, Selection and Repetition Constructs. Each Problem is Properly Defined; The Control Structures Required are Established; A Pseudocode Algorithm is Developed; And the Solution is Manually Checked For Logic Errors 6.1 Eight Solution Algorithms 6.2 Chapter Summary 6.3 Programming Problems7 ModularizationThis Chapter Introduces Modularization as a Means of Dividing a Problem into Subtasks. Hierarchy Charts are Introduced as a Pictorial Representation of Program Module Structure. Several Algorithms Which Use a Modular Structure are Developed 7.1 Modularization 7.2 Hierarchy Charts or Structure Charts 7.3 Steps in Modularization 7.4 Programming Examples Using Modules 7.5 Chapter Summary 7.6 Programming Problems8 Module Design ConsiderationsThis Chapter Introduces the Concepts of Module Cohesion, Inter-Module Communication, Local and Global Data, Scope, Side Effects, and the Passing of Parameters Between Modules. Several Levels of Cohesion and Coupling are Described and Pseudocode Examples of Each Level are Provided 8.1 Module Cohesion 8.2 Inter-Module Communication 8.3 Using Parameters in Program Design 8.4 Module Coupling 8.5 Chapter Summary 8.6 Programming Problems9 General Pseudocode Algorithms for Common Business ApplicationsThis Chapter Develops a General Pseudocode Algorithm for Five Common Business Applications. All Problems are Defined; A Hierarchy Chart is Established; And a Pseudocode Algorithm is Developed, Using A Mainline and Several Subordinate Modules. The Problems Covered Include Report Generation with Page Break, A Single-Level Control Break, A Multiple-Level Control Break, A Sequential File Update Program and Array Processing 9.1 Program Structure 9.2 Report Generation with Page Break 9.3 Single-Level Control Break 9.4 Multiple-Level Control Break 9.5 Sequential File Update 9.6 Array Processing 9.7 Chapter Summary 9.8 Programming Problems10 ConclusionA Revision of the Steps a Programmer Must Follow to Achieve Good Program Design 10.1 Simple Program Design 10.2 Chapter SummaryAppendixGlossary