Problem solving with C++ the object of programming - Savitch, Walter J. (Pearson Addison-Wesley, 2005)