If you are teaching an introductory course in programming concepts, this book is worth considering. It has good coverage of the basics of general program design, input, output, and table and array processing. The author also covers a bit of computer hardware and a tiny bit of testing, debugging, and maintenance. He does everything “top-down,” the best approach.
The chapter titles describe the topics covered.
:9N(1) Application programming: a problem-solving approach
(2) Structured problem solving
(3) Modular details of problem solving
(4) Information delivery: outputting
(5) Data accumulation: inputting
(6) Table and array processing
(7) Searches
(8) Sorts and merges
(9) Files
(10) Testing, debugging, and maintenance programming
What struck me while reading this book was how little had changed since I was introduced to this material nearly 30 years ago, although the books then used FORTRAN rather than BASIC and Pascal. The author refers to plastic templates for flowcharting, which were around then. While the material covered is necessary, Adair does not even mention newer and very important subjects such as databases, CASE, graphical user interfaces, object orientation, telecommunications, multitasking, and distributed processing. I would prefer students to learn how things are really done today, and then learn how their ancestors worked.