C++ Programming from problem analysis to program design 6th ed. - Malik D.S.