
Problem Solving with C++
The Object of Programming, CodeMate Enhanced Edition: United States Edition
Walter Savitch(Author)
Pearson (Publisher)
4th Edition
Published on 12. September 2003
Book
Mixed media product
1024 pages
978-0-321-19720-7 (ISBN)
Article exhausted; check for reprint
Description
Problem Solving with C++, 4e is a revision of one of the leading books for courses introducing programming in C++. The text explains C++ and basic programming techniques in a way suitable for beginning students. This book adapts to the syllabus created by the instructor rather than making you adapt to the book. The order in which the chapters and sections are covered can easily be changed without loss of continuity in reading the text.
The book teaches students how to define their own classes, while ensuring a solid understanding of basic tools such as simple control structures and function definitions. A measured approach is taken toward classes, teaching students how to write simple classes at first, then constructors are added, then overloading simple operators, then overloading the I/O operators <<<< and >>>>, and so forth. By defining their own classes early, students are getting a hands-on experience not provided by those texts that merely teach how to use classes in the beginning.
This book also comes with Addison-Wesley's CodeMate. This online program competency builder transforms a student's reading experience into a dynamic programming environment with a click of a mouse. CodeMate allows students to view, compile, run, and edit programming problems directly from the textbook without installing a compiler.
The book teaches students how to define their own classes, while ensuring a solid understanding of basic tools such as simple control structures and function definitions. A measured approach is taken toward classes, teaching students how to write simple classes at first, then constructors are added, then overloading simple operators, then overloading the I/O operators <<<< and >>>>, and so forth. By defining their own classes early, students are getting a hands-on experience not provided by those texts that merely teach how to use classes in the beginning.
This book also comes with Addison-Wesley's CodeMate. This online program competency builder transforms a student's reading experience into a dynamic programming environment with a click of a mouse. CodeMate allows students to view, compile, run, and edit programming problems directly from the textbook without installing a compiler.
More details
Edition
4th edition
Language
English
Place of publication
United States
Publishing group
Pearson Education (US)
Target group
College/higher education
Dimensions
Height: 232 mm
Width: 187 mm
Weight
1000 gr
ISBN-13
978-0-321-19720-7 (9780321197207)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
New editions

Book
07/2004
5th Edition
Pearson
€79.22
Article exhausted; check for reprint
Content
(Each Chapter concludes with a "Chapter Summary," "Answers to Self-Test Exercises," and "Programming Projects.")
1. Introduction to Computers and C++ Programming.
Computer Systems.
Programming and Problem Solving.
Introduction to C++.
Testing and Debugging.
2. C++ Basics.
Variables and Assignments.
Input and Output.
Data Types and Expressions.
Simple Flow of Control.
Program Style.
3. Functions that Return a Value.
Top-Down Design.
Programmer-Defined Functions.
Procedural Abstraction.
Local Variables.
Overloading Function Names.
4. Functions for All Subtasks.
void-Functions.
Call-by-Reference Parameters.
Using Procedural Abstraction.
5. I/O Streams as an Introduction to Objects and Classes.
Streams and Basic File I/O.
Tools for Stream I/O.
Character I/O.
Inheritance.
6. Defining Classes.
Structures.
Classes.
Abstract Data Types.
7. More Flow of Control.
Using Boolean Expressions.
Multiway Branches.
Designing Loops.
8. Friends and Overload Operators.
Friend Function.
Overloading Operators.
9. Separate Compilation and Namespaces.
Separate Compilation.
Namespaces.
10. Arrays.
Introduction to Arrays.
Arrays in Functions.
Programming with Arrays.
Arrays and Classes.
Multidimensional Arrays.
11. Strings and Vectors.
An Array Type for Strings.
Vectors.
12. Pointers and Dynamic Arrays.
Pointers.
Dynamic Arrays.
Classes and Dynamic Arrays.
13. Recursion.
Recursive Functions for Tasks.
Recursive Functions for Values.
Thinking Recursively.
14. Templates.
Templates of Algorithm Abstraction.
Syntax for Class Templates.
15. Pointers and Linked Lists.
Nodes and Linked Lists.
A Linked List Application.
16. Inheritance.
Inheritance Basics.
Inheritance Details.
Polymorphism.
17. Exception Handling.
Exception Handling Basics.
Programming Techniques for Exception Handling.
Appendices.
Appendix 1. C++ Keywords.
Appendix 2. Precedence of Operators.
Appendix 3. ASCII Character Set.
Appendix 4. Some Library Functions.
Appendix 5. The Assert Statement.
Appendix 6. Inline Functions.
Appendix 7. Overloading the Array Index Square Brackets.
Appendix 8. The This Pointer.
Appendix 9. Overloading Operators as Member Operators.
1. Introduction to Computers and C++ Programming.
Computer Systems.
Programming and Problem Solving.
Introduction to C++.
Testing and Debugging.
2. C++ Basics.
Variables and Assignments.
Input and Output.
Data Types and Expressions.
Simple Flow of Control.
Program Style.
3. Functions that Return a Value.
Top-Down Design.
Programmer-Defined Functions.
Procedural Abstraction.
Local Variables.
Overloading Function Names.
4. Functions for All Subtasks.
void-Functions.
Call-by-Reference Parameters.
Using Procedural Abstraction.
5. I/O Streams as an Introduction to Objects and Classes.
Streams and Basic File I/O.
Tools for Stream I/O.
Character I/O.
Inheritance.
6. Defining Classes.
Structures.
Classes.
Abstract Data Types.
7. More Flow of Control.
Using Boolean Expressions.
Multiway Branches.
Designing Loops.
8. Friends and Overload Operators.
Friend Function.
Overloading Operators.
9. Separate Compilation and Namespaces.
Separate Compilation.
Namespaces.
10. Arrays.
Introduction to Arrays.
Arrays in Functions.
Programming with Arrays.
Arrays and Classes.
Multidimensional Arrays.
11. Strings and Vectors.
An Array Type for Strings.
Vectors.
12. Pointers and Dynamic Arrays.
Pointers.
Dynamic Arrays.
Classes and Dynamic Arrays.
13. Recursion.
Recursive Functions for Tasks.
Recursive Functions for Values.
Thinking Recursively.
14. Templates.
Templates of Algorithm Abstraction.
Syntax for Class Templates.
15. Pointers and Linked Lists.
Nodes and Linked Lists.
A Linked List Application.
16. Inheritance.
Inheritance Basics.
Inheritance Details.
Polymorphism.
17. Exception Handling.
Exception Handling Basics.
Programming Techniques for Exception Handling.
Appendices.
Appendix 1. C++ Keywords.
Appendix 2. Precedence of Operators.
Appendix 3. ASCII Character Set.
Appendix 4. Some Library Functions.
Appendix 5. The Assert Statement.
Appendix 6. Inline Functions.
Appendix 7. Overloading the Array Index Square Brackets.
Appendix 8. The This Pointer.
Appendix 9. Overloading Operators as Member Operators.