Understanding programming an introduction using C++ - Cannon, Scott R. (West Publishing, 1997)