Title: Problem-Solving Principles
for Programmers: Applied
Logic, Psychology and Grit
By: William E. Lewis
From: Hayden Book Co., Rochelle
Park, NJ
Price: $9.95 (paper)
Lewis’ book “consists of three interwoven conceptual threads: general problem solving, program problem solving, and the influence of psychology on the overall problem-solving process.”
I liked the book and recommend it to people who seek either an introduction to, or increased breadth in, problem solving. You’ll find the style readable and the INTERLINGUA pseudo-code helpful. Lewis uses both non-computer and computer examples; several examples use classic problems–penny-weighing, river-crossing, and black and white hats. In addition, he briefly discusses top-down design concepts for programming.
You are not alone, other people must also labor to solve problems on (or off) the computer. This book will teach you new tricks if you’re inexperienced or remind you of old ones if you’ve been at this a while. When you get stuck, thumbing through this book could give you just the nudge you need.
INTERLINGUA, a computer-like language, reveals problem structures better than does BASIC. As you see from the example, you can translate to any computer language.
PROGRAM: TO COMPUTE GREATEST COMMON DENOMINATOR (GCD)
input FIRST_NUM, SECOND_NUM
while FIRST_NUM not equal SECOND_NUM do
if FIRST_NUM greater than SECOND NUM then
subtract SECOND_NUM from FIRST_NUM
else
subtract FIRST_NUM from SECOND_NUM
set GCD to FIRST_NUM
print 'GREATEST COMMON DIVISOR:',GCD
end * program *
In fact, Lewis offers one example programmed in 5 different languages, including IBM 5110 BASIC.
Since Sinclair BASIC differs from others in many details, I recommend the general book (Hayden 5138-7) for ZX80 owners. The BASIC version of the book uses READ and DATA extensively, and omits the valuable INTERLINGUA listings.–KO