I.1 Why Logic? I-1
I.2 What is Logic? I-2
I.3 Prerequisites for This Book I-4
I.4 Approach of This Book I-5
I.5 Who Should Read This Book? I-6
I.6 Why is Flowcharting and Pseudocoding Shunned? I-6
I.7 Flowcharting and the Current State of IT I-9
I.8 Additional Reading I-11
2.1 What is Pseudocode? 2-1
2.2 Rules of Pseudocode 2-1
2.3 The Why and When of Pseudocode 2-2
2.4 How Do You Learn to Write Pseudocode? 2-2
2.5 Linear Sequence 2-3
2.6 Top Checking Loop 2-3
2.7 Middle Checking Loop 2-4
2.8 Bottom Checking Loop 2-5
2.9 Multiple Decisions 2-5
2.10 Pseudocode Followup 2-7
2.11 Exercises 2-8
Chapter 3 - Some Fundamental Data Types
3.1 Core Data Types 3-1
3.2 Data Type Sizes 3-3
3.3 Variables 3-5
3.4 Arrays 3-6
3.5 Records and Structures 3-7
3.6 Indexes 3-8
3.7 Record and Structure Examples 3-12
3.8 Summary 3-15
3.9 Exercises 3-16
Chapter 4 - Searching and Sorting
4.1 Overview 4-1
4.2 The Bubble Sort 4-1
4.3 Class Exercise One 4-6
4.4 Linear Search 4-7
4.5 Insertion Sort 4-9
4.6 Class Exercise Two 4-12
4.7 Class Exercise Three 4-12
4.8 Shell Sort 4-13
4.9 Binary Search 4-14
4.10 Class Exercise Four 4-15
4.11 Leaping Lynn 4-15
4.12 Class Exercise Five 4-18
4.13 W hen All Search Routines Fail 4-19
4.14 The Two Part Compare 4-20
4.15 Comparing Dates 4-22
4.16 Summary 4-24
4.17 Exercises 4-25
Chapter 5 - Decision Order
5.1 Choosing Your Decision Order
5-1
5.2 Creating an Extract File 5-2
5.3 Class Exercise One 5-5
5.4 Class Exercise Two 5-7
5.5 Class Exercise Three 5-8
5.6 Class Exercise Four 5-9
5.7 Class Exercise Five 5-10
5.8 Summary 5-11
Chapter 6 - Knowing What Questions to Ask
6.1 How are You Going to Use This?
6-1
6.2 Who is the Audience? 6-2
6.3 What Business Areas and Systems are Impacted by
This? 6-3
6.4 Is This Legal? 6-5
6.4.1 Example One 6-5
6.4.2 Example Two (Where Did You Get This?) 6-6
6.5 Who Owns This Project? 6-8
6.6 How W ill Success Be Measured? 6-9
6.7 Who Will Sign Off on This Project? 6-10
6.8 What are the Deliverables? 6-10
6.9 How Much Time Do I Have? 6-11
6.10 How Reliable Does This Have to Be? 6-11
6.11 What is the Required Availability? 6-13
6.12 Summary 6-14
Chapter 7 - Linked Lists
7.1 Pointers 7-1
7.2 A Singly Linked List 7-2
7.3 Doubly Linked Lists 7-5
7.4 W hich do you use? 7-7
7.5 Exercises 7-8
7.6 Class Exercise One 7-8
7.7 Summary 7-8
Chapter 8 - Hash
8.1 What is a Hash? 8-1
8.2 Collisions 8-2
8.3 File vs. Algorithm 8-4
8.4 Summary 8-5
8.5 Exercises 8-6
Chapter 9 - Relational Databases
9.1 What is a Relational Database?
9-1
9.2 Some Important Relational Terms 9-2
9.3 Data Integrity and Constraints 9-5
9.4 SQL and Flowcharting 9-9
9.5 Summary 9-12
9.6 Exercises 9-13
Chapter 10 - Surviving the Fire
10.1 The Philosophy 10-1
10.2 Beware the Deadly Embrace 10-3
10.3 The Stock Order Problem 10-4
10.4 Some Career Advice 10-7