Problem Solving with C++
For the C++ introductory programming course
Problem Solving with C++ continues to be the most widely used textbook by students and instructors in the introduction to programming and C++ language course. Through each edition, hundreds and thousands of students have valued Walt Savitch's approach to programming, which emphasizes active reading through the use of well-placed examples and self-test examples. Created for the beginner, this book focuses on cultivating strong problem-solving and programming techniques while introducing students to the C++ programming language.
Table of Content
Chapter 1 Introduction to Computers and C++ Programming
Chapter 2 C++ Basics
Chapter 3 More Flow of Control
Chapter 4 Procedural Abstraction and Functions That Return a Value
Chapter 5 Functions for All Subtasks
Chapter 6 I/O Streams as an Introduction to Objects and Classes
Chapter 7 Arrays
Chapter 8 Strings and Vectors
Chapter 9 Pointers and Dynamic Arrays
Chapter 10 Defining Classes
Chapter 11 Friends, Overloaded Operators, and Arrays in Classes
Chapter 12 Separate Compilation and Namespaces
Chapter 13 Pointers and Linked Lists
Chapter 14 Recursion
Chapter 15 Inheritance
Chapter 16 Exception Handling
Chapter 17 Templates
Chapter 18 Standard Template Library
1 C++ Keywords
2 Precedence of Operators
3 The ASCII Character Set
4 Some Library Functions
5 Inline Functions
6 Overloading the Array Index Square Brackets
7 The this Pointer
8 Overloading Operators as Member Operators
Personalized Learning with MyProgrammingLab
Through the power of practice and immediate personalized feedback, MyProgrammingLab helps students fully grasp the logic, semantics, and syntax of programming. A self-study and homework tool, a MyProgrammingLab course consists of hundreds of small practice problems organized around the structure of this textbook. For students, the system automatically detects errors in the logic and syntax of their code submissions and offers targeted hints that enable them to figure out what went wrong—and why. For instructors, a comprehensive roster tracks correct and incorrect answers and stores the code inputted by students for review.
Programming practice: Your students will gain first-hand programming experience in an interactive online environment.
Immediate, personalized feedback: Students will gain intelligent, immediate feedback by mining our large database of submissions to provide student-specific responses.
Dynamic roster: Your students' submissions are automatically evaluated, both saving you time, and offering students immediate learning opportunities. The color-coded roster gives you a quick glance of your classes' progress. Easily drill down to receive information on a single student's performance or submissions for a specific problem.
Graduated complexity: Problems are broken down into short, understandable sequences of exercises, where each sequence relates to a particular topic. Within each sequence the level and sophistication of the exercises increase gradually but steadily.
Step-by-step VideoNote tutorials: Step-by-step video tutorials enhance the programming concepts presented in the book by allowing students to view the entire problem-solving process outside of the classroom-when they need help the most.
A powerful homework and test manager: MyProgrammingLab lets you create, import, and manage online homework assignments, quizzes, and tests that are automatically graded. You can choose from a wide range of assignment options, including time limits, proctoring, and maximum number of attempts allowed. The bottom line: MyProgrammingLab means less time grading and more time teaching.
Comprehensive online course content: Filled with a wealth of content that is tightly integrated with your textbook, MyProgrammingLab lets you easily add, remove, or modify existing instructional material. You can also add your own course materials to suit the needs of your students or department. In short, MyProgrammingLab lets you teach exactly as you'd like."