FREE SHIPPING BOTH WAYS
ON EVERY ORDER!
LIST PRICE:
$97.20

Sorry, this item is currently unavailable.

Problem Solving, Abstraction, & Design Using C++: The Visual C++ Manual

ISBN: 9780201750669 | 020175066X
Format: Paperback
Publisher: Pearson College Div
Pub. Date: 8/1/2001

Why Rent from Knetbooks?

Because Knetbooks knows college students. Our rental program is designed to save you time and money. Whether you need a textbook for a semester, quarter or even a summer session, we have an option for you. Simply select a rental period, enter your information and your book will be on its way!

Top 5 reasons to order all your textbooks from Knetbooks:

  • We have the lowest prices on thousands of popular textbooks
  • Free shipping both ways on ALL orders
  • Most orders ship within 48 hours
  • Need your book longer than expected? Extending your rental is simple
  • Our customer support team is always here to help
Table of Contents
Introduction to Computers, Problem Solving, and Programming
1(38)
Overview of Computers
2(2)
... MORE
Early Computers
2(1)
Categories of Computers
3(1)
Sharing Computer Resources
3(1)
Computer Hardware
4(9)
Memory
6(2)
Main Memory
8(1)
Secondary Memory and Secondary Storage Devices
8(2)
Central Processing Unit
10(1)
Input/Output Devices
10(1)
Computer Networks
11(1)
The World Wide Web
12(1)
Computer Software
13(7)
Operating System
13(3)
Application Software
16(1)
Programming Languages
16(1)
Object-Oriented Programming
17(3)
Processing a High-Level Language Program
20(4)
Executing a Program
22(2)
The Software Development Method
24(3)
Caution: Failure is Part of the Process
26(1)
Applying the Software Development Method
27(3)
CASE STUDY: Converting Miles to Kilometers
27(3)
Professional Ethics for Computer Programmers
30(2)
Privacy and Misuse of Data
30(1)
Computer Hacking
30(1)
Plagiarism and Software Piracy
31(1)
Misuse of a Computer Resource
31(1)
Chapter Review
32(4)
Quick-Check Exercises
33(1)
Answers to Quick-Check Exercises
34(1)
Review Questions
35(1)
Interview with Bjarne Stroustrup
36(3)
Overview of C++
39(64)
C++ Language Elements
40(5)
Comments
40(1)
Compiler Directive #include
41(1)
Namespace std
42(1)
Function main
42(1)
Declaration Statements
43(1)
Executable Statements
43(2)
Reserved Words and Identifiers
45(1)
Reserved Words
45(3)
Identifiers
45(1)
Uppercase and Lowercase Letters
46(2)
Data Types and Declarations
48(1)
Data Types
48(8)
string Class
52(1)
Purpose of Data Types
52(1)
Declarations
53(1)
Constant Declarations
54(2)
Executable Statements
56(10)
Programs in Memory
56(1)
Assignment Statements
57(2)
Input/Output Operations
59(1)
Input Statements
60(2)
Program Output
62(2)
The return Statement
64(2)
General Form of a C++ Program
66(3)
Comments in Programs
67(2)
Arithmetic Expressions
69(15)
Operators / and %
70(2)
Data Type of a Mixed-Type Expression
72(1)
Mixed-Type Assignment Statement
73(1)
Expressions with Multiple Operators
74(4)
Writing Mathematical Formulas in C++
78(1)
Finding the Value of a Coin Collection
79(5)
Interactive Mode, Batch Mode, and Data Files
84(3)
Input Redirection
84(1)
Output Redirection
85(2)
Common Programming Errors
87(16)
Syntax Errors
88(1)
Run-Time Errors
89(1)
Undetected Errors
90(1)
Logic Errors
91(1)
Chapter Review
92(1)
Quick-Check Exercises
93(2)
Answers to Quick-Check Exercises
95(1)
Review Questions
95(2)
Programming Projects
97(3)
Interview with Josee Lajoie
100(3)
Top-Down Design with Functions and Classes
103(66)
Building Programs from Existing Information
104(9)
Finding the Area and Circumference of a Circle
104(4)
Computing the Weight of a Batch of Flat Washers
108(5)
Library Functions
113(6)
C++ Library Functions
114(4)
A Look Ahead
118(1)
Top-Down Design and Structure Charts
119(2)
Drawing Simple Figures
119(2)
Functions without Arguments
121(10)
Function Prototypes
123(1)
Function Definitions
123(2)
Placement of Functions in a Program
125(2)
Order of Execution of Functions
127(1)
Advantages of Using Function Subprograms
128(1)
Displaying User Instructions
129(2)
Functions with Input Arguments
131(12)
void Functions with Input Arguments
133(1)
Functions with Input Arguments and a Single Result
134(4)
Functions with Multiple Arguments
138(1)
Argument/Parameter List Correspondence
139(2)
The Function Data Area
141(1)
Testing Functions Using Drivers
142(1)
Scope of Names
143(2)
Extending C++ through Classes: string and money
145(9)
The string Class
145(1)
Declaring string Objects
145(1)
Reading and Displaying string Objects
145(2)
String Assignments and Concatenation
147(1)
Operator Overloading
147(1)
Dot Notation: Calling Functions length and at
148(1)
Member Functions for Word-Processing Operations
149(1)
Assigning a Substring to a string Object
150(1)
The money Class
150(3)
Header and Implementation Files for User-Defined Classes
153(1)
Common Programming Errors
154(15)
Separately Testing Function Subprograms
157(1)
Chapter Review
158(2)
Quick-Check Exercises
160(1)
Answers to Quick-Check Exercises
161(1)
Review Questions
162(1)
Programming Projects
162(4)
Interview with Mark Hall
166(3)
Selection Structures: if and switch Statements
169(58)
Control Structures
170(1)
Logical Expressions
170(11)
Logical Expressions Using Relational and Equality Operators
171(1)
Logical Expressions Using Logical Operators
172(1)
Operator Precedence
173(2)
Writing Conditions in C++
175(2)
Comparing Characters and Strings
177(1)
Boolean Assignment
178(1)
Writing bool Values
179(1)
Using Integers to Represent Logical Values
180(1)
Introduction to the if Control Statement
181(6)
if Statement with Two Alternatives
181(1)
if Statement with Dependent Statement
182(1)
if Statement Conditions with Characters and Strings
183(2)
Format of the if Statement
185(2)
if Statements with Compound Alternatives
187(4)
Tracing an if Statement
188(3)
Decision Steps in Algorithms
191(10)
CASE STUDY : Payroll Problem with Functions
191(8)
A Reminder About Identifier Scope
199(1)
Adding Data Flow Information to Structure Charts
199(1)
Commentary--The Software Development Method
200(1)
Checking the Correctness of an Algorithm
201(2)
Nested if Statements and Multiple-Alternative Decisions
203(8)
Comparison of Nested if Statements and a Sequence of if Statements
204(1)
Writing a Nested if as a Multiple-Alternative Decision
205(1)
Order of Conditions
206(3)
Short-Circuit Evaluation of Logical Expressions
209(2)
The switch Control Statement
211(5)
Proper Use of break
214(1)
Comparison of Nested if Statements and the switch Statement
214(1)
Using a switch Statement to Select Alternative Functions
214(2)
Common Programming Errors
216(11)
Chapter Review
218(1)
Quick-Check Exercises
218(3)
Answers to Quick-Check Exercises
221(1)
Review Questions
222(1)
Programming Projects
223(4)
Repetition and Loop Statements
227(68)
Counting Loops and the while Statement
228(5)
The while Statement
228(2)
Syntax of the while Statement
230(3)
Accumulating a Sum or Product in a Loop
233(6)
Multiplying a List of Numbers
236(1)
Compound Assignment Operators
237(2)
The for Statement
239(8)
Increment and Decrement Operators
241(2)
Increments and Decrements other than One
243(2)
Displaying a Table of Values
245(2)
Conditional Loops
247(7)
A Loop with a Decreasing Loop Control Variable
248(1)
Monitoring Oil Supply
248(4)
More General Conditional Loops
252(2)
Loop Design and Loop Patterns
254(7)
Calculating an Average
258(1)
Flag-Controlled Loops
259(2)
The do-while Statement
261(6)
Review of while, for, and do-while Loops
267(3)
Nested Loops
270(4)
Debugging and Testing Programs
274(4)
Using a Debugger
274(1)
Debugging without a Debugger
275(1)
Off-by-One Errors
276(1)
Testing
277(1)
Common Programming Errors
278(17)
Chapter Review
281(2)
Quick-Check Exercises
283(2)
Answers to Quick-Check Exercises
285(1)
Review Questions
285(2)
Programming Projects
287(5)
Interview with Mike Weisert
292(3)
Modular Programming
295(50)
Value and Reference Parameters
296(10)
Call-by-Value and Call-by-Reference Parameters
298(2)
void Functions Can Return Results
300(1)
When to Use a Reference or a value Parameter
300(1)
Comparison of Value and Reference Parameters
301(1)
Protection Afforded by Value Parameters
302(1)
Argument/Parameter List Correspondence Revisited
302(4)
Functions with Output and Inout Parameters
306(8)
Stepwise Design with Functions
314(9)
CASE STUDY: General Sum and Average Problem
314(6)
Multiple Declarations of Identifiers in a Program
320(3)
Using Objects with Functions
323(3)
Debugging and Testing a Program System
326(4)
Top-Down Testing and Stubs
326(1)
Bottom-Up Testing and Drivers
327(1)
Debugging Tips for Program Systems
328(1)
Identifier Scope and Watch Window Variables
328(1)
Black-Box versus White-Box Testing
329(1)
Recursive Functions (Optional)
330(3)
Common Programming Errors
333(12)
Chapter Review
334(1)
Quick-Check Exercises
335(1)
Answers to Quick-Check Exercises
336(1)
Review Questions
337(1)
Programming Projects
338(7)
Simple Data Types
345(40)
Constants Revisited
346(1)
The #define Compiler Directive
346(1)
Internal Representations of Numeric Data Types
347(6)
Fixed-Point and Floating-Point Data Types
347(1)
Integer Types
348(1)
Floating-Point Types
349(1)
Types of Numeric Literals
349(1)
Value Ranges for Integer and Floating-Point Types
349(1)
Numerical Inaccuracies
349(2)
Mixing Types: Promotions
351(1)
Type Conversions
351(1)
Type Casting
352(1)
Character Data and Functions
353(5)
Some Useful Character Functions
355(3)
Type bool Data and Logical Expressions
358(4)
Complementing Logical Expressions
359(1)
Type bool Functions
360(1)
Input and Output of Type bool Data
361(1)
Enumeration Types
362(9)
Characters as Enumerator Values
364(1)
Comparisons Involving Enumeration Types
365(1)
Distinctions among Integral Types
365(1)
Reading and Writing Enumeration Type Values
366(2)
Placement of Enumeration Type Declarations
368(1)
Enumeration Types as Cast Operators
368(3)
Common Programming Errors
371(2)
Chapter Review
373(5)
Quick-Check Exercises
375(1)
Answers to Quick-Check Exercises
376(1)
Review Questions
377(1)
Programming Projects
378(4)
Interview with Thomas Drake
382(3)
Streams and Files
385(42)
The Standard Input/Output Streams
386(8)
Reading One Character at a Time
390(4)
External Files
394(9)
Interactive versus Batch Processing
394(1)
Directory Names for External Files
395(1)
Attaching Streams to External Files
395(4)
Function copyLine
399(1)
More on the Newline Character
400(1)
Using getline with a File Stream
401(2)
Using External Files for Communication between Programs
403(6)
Preparing a Payroll File
403(6)
More on Reading String Data
409(3)
Using ignore to Advance Past the Newline Character
409(3)
Input/Output Manipulators
412(2)
Common Programming Errors
414(13)
Chapter Review
416(1)
Quick-Check Exercises
416(2)
Answers to Quick-Check Exercises
418(1)
Review Questions
418(2)
Programming Projects
420(4)
Interview with Anita Borg
424(3)
Data Structures: Arrays and Structs
427(54)
The Array Data Type
428(7)
Array Declaration
428(3)
Array Initialization
431(2)
Array Subscripts
433(2)
Sequential Access to Array Elements
435(6)
Strings and Arrays of Characters
439(2)
Array Arguments
441(7)
Array Elements as Arguments
441(2)
Array Arguments
443(5)
Reading Part of an Array
448(3)
Searching and Sorting Arrays
451(7)
Finding the Smallest Value in an Array
451(2)
Array Search
453(1)
Sorting an Array in Ascending Order
454(4)
Analyzing Algorithms: Big-O Notation
458(3)
Analysis of a Search Algorithm
459(1)
Analysis of a Sort Algorithm
459(2)
The Struct Data Type
461(4)
Declaring a Struct Type and Struct Variables
461(2)
Accessing Members of a struct
463(2)
Structs as Operands and Arguments
465(4)
Struct Copy or Assignment
465(1)
Passing a Struct as an Argument
465(1)
Reading a Struct
466(1)
Efficiency of Reference Arguments
467(2)
Common Programming Errors
469(12)
Chapter Review
470(2)
Quick-Check Exercises
472(1)
Answers to Quick-Check Exercises
473(1)
Review Questions
474(1)
Programming Projects
475(6)
User-Defined Classes
481(62)
Class Definition and Use
482(7)
The counter Class
482(1)
Class Definition for the counter Class
483(3)
Compiler Directives in File counter.h
486(1)
Using the counter Class
487(1)
Compiler Directives in File CounterTest.cpp
487(2)
Class Implementation
489(4)
Constructors
489(3)
Accessor and Modifier Functions
492(1)
Compiler Directives in File counter.cpp
492(1)
Summary of Rules for Use of Classes and Objects
493(6)
Objects as Class Instances
493(1)
Public versus Private Access
494(1)
Syntax for Class and Member Function Definitions
494(3)
Comparing Structs and Classes
497(1)
Project Files and Separate Compilation
497(1)
Combining Arrays, Structs, and Classes
498(1)
Function Overloading and Polymorphism
498(1)
Classes as Operands and Arguments
499(2)
A Fraction Class
501(7)
Design of fraction Class
501(2)
Using Class fraction
503(2)
Implementation File for Class fraction
505(3)
A Circle Class
508(7)
Design of circle Class
508(3)
Using Class circle
511(1)
Implementation File for Class circle
511(4)
A Simple String Class
515(7)
Design of Class simpleString
515(1)
Definition of Class simpleString
516(1)
Testing Member Functions of Class simpleString
516(2)
Implementation File for Class simpleString
518(4)
A Savings Account Class
522(8)
Using the Savings Account Class
522(8)
Common Programming Errors
530(13)
Chapter Review
532(2)
Quick-Check Exercises
534(1)
Answers to Quick-Check Exercises
534(1)
Review Questions
535(1)
Programming Projects
536(4)
Interview with Timothy Budd
540(3)
Modeling Data with Arrays, Structs, and Classes
543(72)
Multidimensional Arrays
544(6)
Declaring Two-Dimensional Arrays
544(2)
Initializing Two-Dimensional Arrays
546(1)
Nested Loops for Processing Two-Dimensional Arrays
546(1)
Two-Dimensional Arrays as Function Arguments
547(1)
Arrays with Several Dimensions
548(2)
Array of Structs
550(4)
Template Classes
554(7)
Definition of a Template Class
554(4)
Implementation of a Template Class
558(2)
Compiler Instructions to Support Separate Complilation
560(1)
The Indexed List Abstract Data Type
561(8)
Need for an Indexed List Class
561(1)
Analysis and Design of an Indexed List Class
562(3)
Using the indexList Class
565(4)
Implementing the Indexed List Class
569(6)
Illustrating Object-Oriented Design
575(9)
A Telephone Directory Program
575(9)
Operator Overloading and Friends
584(6)
Operator Overloading
585(1)
Friends
585(2)
Implementing the Directory Entry Class
587(3)
The Stack Abstract Data Type
590(7)
Implementing the Stack Class
597(4)
Data Members
597(1)
Stack Operators
598(3)
Common Programming Errors
601(14)
Chapter Review
602(2)
Quick-Check Exercises
604(2)
Answers to Quick-Check Exercises
606(1)
Review Questions
607(2)
Programming Projects
609(6)
Recursion
615(40)
The Nature of Recursion
616(3)
Properties of Recursive Problems and Solutions
617(2)
Tracing Recursive Functions
619(7)
Tracing a Recursive Function
619(1)
Displaying Characters in Reverse Order
620(3)
Stack for Function Calls
623(2)
Implementation of Argument Stacks in C++
625(1)
Recursive Mathematical Functions
626(6)
Recursive Functions with Array Arguments
632(7)
Binary Search
634(5)
Problem Solving with Recursion
639(6)
The Towers of Hanoi
639(6)
Comparison of Iteration and Recursive Functions
645(1)
Common Programming Errors
645(10)
Chapter Review
647(1)
Quick-Check Exercises
647(1)
Answers to Quick-Check Exercises
647(1)
Review Questions
648(1)
Programming Projects
649(3)
Interview with Marshall Cline
652(3)
Pointers and Dynamic Data Structures
655(60)
Pointers and the new Operator
656(6)
Accessing Data with Pointers
657(1)
Pointer Operations
658(1)
Pointers to Structs
658(4)
Manipulating the Heap
662(2)
Effect of the new Operator on the Heap
662(1)
Returning Cells to the Heap
663(1)
Linked Lists
664(8)
Declaring Nodes
664(1)
Connecting Nodes
665(1)
Inserting a Node in a List
666(1)
Insertion at the Head of a List
667(1)
Insertion at the End of a List
668(1)
Deleting a Node
669(1)
Traversing a List
669(2)
Circular Lists and Two-Way Lists (Optional)
671(1)
Stacks as Linked Lists
672(7)
Stack Operators
675(4)
The Queue Abstract Data Type
679(7)
Implementing a Queue ADT
680(6)
Binary Trees
686(7)
Binary Search Tree
687(1)
Searching a Binary Search Tree
688(1)
Building a Binary Search Tree
688(3)
Displaying a Binary Search Tree
691(2)
Binary Search Tree Abstract Data Type
693(8)
Design of Binary Tree Class
693(3)
Implementation of Binary Tree Class
696(5)
Efficiency of a Binary Search Tree
701(2)
Common Programming Errors
703(12)
Syntax Errors
703(1)
Run-Time Errors
703(1)
Chapter Review
704(2)
Quick-Check Exercises
706(1)
Answers to Quick-Check Exercises
707(1)
Review Questions
708(2)
Programming Projects
710(5)
Appendix A ASCII Character Set715(1)
Appendix B Reserved Words and Special Characters716(1)
Appendix C Selected C++ Library Facilities717(7)
Appendix D Operators724(1)
Appendix E A Brief Introduction to Inheritance and Polymorphism725(20)
E.1 Subclassing for Specialization
725(4)
E.2 Subclassing for Specification
729(13)
CASE STUDY: Areas and Perimeters of Different Figures
730(12)
E.3 Commentary
742(1)
E.4 Polymorphism
743(2)
Appendix F Using Visual C++745(9)
F.1 Creating a New Project
745(5)
F.2 Reopening a Project
750(1)
F.3 Using the Debugger
750(2)
F.4 Creating Projects with Multiple Files
752(2)
Appendix G Using C++ Builder754(8)
G.1 Creating a New Project
754(2)
G.2 Viewing the Console Window before Exiting Your Program
756(1)
G.3 Reopening a Project
757(1)
G.4 Using the Debugger
757(1)
G.5 Creating Projects with Multiple Files
758(4)
Appendix H Containers and Iterators762(49)
H.1 Vectors
762(1)
H.2 Copying a Vector
763(1)
H.3 Other Vector Operations
764(1)
H.4 Iterators
764(1)
H.5 Standard Algorithms
765(3)
H.6 Stacks
768(1)
H.7 Queues
769(2)
H.8 Lists
771(40)
Index811

Related Products


  • Problem Solving, Abstraction, and Design Using C++
    Problem Solving, Abstraction, ...
  • Problem Solving, Abstraction, and Program Design Using C++
    Problem Solving, Abstraction, ...
  • Problem Solving, Abstraction, and Design Using C++
    Problem Solving, Abstraction, ...
  • Problem Solving, Abstraction, and Design Using C++
    Problem Solving, Abstraction, ...
  • Problem Solving, Abstraction, and Design Using C++
    Problem Solving, Abstraction, ...


Please wait while this item is added to your cart...