Addison-Wesley / Prentice Hall
My Instructor Resource Center : Log in or request access
Engineering Problem Solving with C++, 2/E
ISBN-10: 0136011756
ISBN-13: 9780136011750
Publisher: Prentice Hall
Copyright: 2008
Format: Paper; 576 pp
Published: 12/31/2007
Status: Instock
Suggested retail price: $111.00
Buy from myPearsonStore
For one/two semester courses in Engineering and Computer Science at the freshman/sophomore level.
This text is a clear, concise introduction to problem solving and the C++ programming language. The authors’ proven five-step problem solving methodology is presented and then incorporated in every chapter of the text. Outstanding engineering and scientific applications are used throughout; all applications are centered around the theme of engineering challenges in the 21st century.
Supplements Include:
For Students: Access Data Files at www.prenhall.com/etter
Instructor Resource Center includes:
• Real-world engineering and scientific examples and application problems.
• Five-step process for problem-solving:
1) State the problem clearly
2) Describe the input and output information and determine data types
3) Work a simple exercise by hand
4) Develop an algorithm and convert it to a computer program
5) Test the solution with a variety of data. The steps are clearly identified each time that a complete engineering problem is solved.
• Extensive pedagogy – Chapters contain Practice! problems, Modify!exercises, Exam Practice!and programming problems.
• Emphasis on readability and documentation – Stresses the importance of these two facets in program development.
• Standard C++ library – Utilizes the first international standard language published by the IOS (International Standards Organization) and ANSI (American National Standards Institute).
• Study and programming aids – Uses margin notes, style guidelines, and icons to emphasize style and potential program bugs.
• Optional chapter sections on numerical techniques – Include interpolation, linear modeling (regression), root finding, numerical integration, solution to simultaneous equations, and an introduction to the concept of a matrix.
• Appendices – Include components in the Standard C++ library; ASCII character codes; and a list of references.
• Instructors Resource CD-ROM – Includes solutions to most programming exercises; data files; a test bank; and a complete set of PowerPoint slide lecture notes.
• New statement boxes:
– Provide a clear picture of the syntax of newly introduced statements
– Make the text easier for students to use as a reference
– Aid the instructor in preparing lecture notes.
• Added program traces – Illustrate flow of control and assignment of values to variables.
• Term statement block defined and incorporated – Facilitates a cleaner discussion of C++ constructs.
• Numerous added Practice! exercises – Support and improve coverage of new and existing material.
• 50% new Engineering Challenge chapter openers and Problem Solving Applied problems.
• Many new problems added to the Programming Problems at the end of each chapter.
• Major revisions in Chapter 1 to bring material up to date – Adds a new section on number systems and data representation,several Practice! problems, and an Exam Practice section at the end of the chapter.
• New material in Chapter 4:
– Adds coverage of file streams, includinga discussion of the stream class hierarchy and a discussion of stream state flags. – Adds numerous tables and programming examples to aid in error checking has also been added to chapter 4.
• Additional coverage of recursion in chapters 5 and 10.
• Expanded discussion of functions in chapter 5 – Gives students a bigger picture of this complicated topic.
• Modified discussion of OO programming in chapter 4 to support the discussion of file streams.
• Discussion of function templates, function overloading and STL vectors removed from chapter 6 – Covers these topics in more detail in chapters 8,9,and 10.
Contents
Chapter 1
INTRODUCTION TO COMPUTING AND ENGINEERING PROBLEM SOLVING 2
1.1 Historical Perspective 3
1.2 Recent Engineering Achievements 7
Changing Engineering Environment 9
1.3 Computing Systems 11
Computer Hardware 11
Computer Software 12
1.4 Data Representation and Storage 16
Number Systems 17
Data Types and Storage 23
1.5 An Engineering Problem-Solving Methodology 26
Summary 29
Chapter 2
SIMPLE C++ PROGRAMS 34
ENGINEERING CHALLENGE: Global Change 34
2.1 Program Structure 35
2.2 Constants and Variables 39
Scientific Notation 41
Numeric Data Types 42
Boolean Data Type 44
Character Data Type 44
String Data 46
Symbolic Constants 47
2.3 C++ Operators 47
Assignment Operator 47
Arithmetic Operators 49
Precedence of Operators 51
Overflow and Underflow 54
Increment and Decement Operators 55
Abbreviated Assignment Operators 55
2.4 Standard Input and Output 57
The cout Object 57
Stream Objects 58
Manipulators 60
The cin Object 63
2.5 Numerical Technique: Linear Interpolation 65
2.6 Problem Solving Applied: Freezing Temperature of Seawater 69
2.7 Basic Functions Included in the C++ Standard Library 73
Elementary Math Functions 74
Trigonometric Functions 75
Hyperbolic Functions* 76
Character Functions 78
2.8 Problem Solving Applied: Velocity Computation 78
2.9 System Limitations 82
Summary 83
Chapter 3
CONTROL STRUCTURES 92
ENGINEERING CHALLENGE: Global Change 92
3.1 Algorithm Development 93
Top-Down Design 93
Structured Programming 94
Refinement in Pseudocode 95
Evaluation of Alternative Solutions 98
3.2 Conditional Expressions 98
Relational Operators 98
Logical Operators 99
Precedence and Associativity 101
3.3 Selection Statements 102
Simple if Statements 102
if/else Statement 104
switch Statement 108
3.4 Loop Structures 111
while Loop 111
do/while Loop 114
for Loop 116
break and continue Statements 120
Structuring Input Loops 121
3.5 Problem Solving Applied: Weather Balloons 125
Summary 130
Chapter 4
WORKING WITH DATA FILES 138
ENGINEERING CHALLENGE: Weather Prediction 138
4.1 Stream Class Hierarchy 139
Stream Class Hierarchy 139
ifstream Class 142
ofstream Class 144
4.2 Reading Data Files 145
Specified Number of Records 146
Trailer or Sentinel Signal 148
End-of-File 150
4.3 Generating a Data File 153
4.4 Problem Solving Applied: Data Filters–Modifying an HTML File 156
4.5 Error Checking 159
The Stream State 161
4.6 Numerical Technique: Linear Modeling* 166
4.7 Problem Solving Applied: Ozone Measurements* 169
Summary 175
Chapter 5
MODULAR PROGRAMMING WITH FUNCTIONS 182
ENGINEERING CHALLENGE: Enhanced Oil and Gas Recovery 182
5.1 Modularity 183
5.2 Programmer-Defined Functions 185
Function Definition 186
Function Prototype 194
5.3 Parameter Passing 195
Pass by Value 196
Pass by Reference 198
Storage Class and Scope 204
5.4 Problem Solving Applied: Calculating a Center of Gravity 206
5.5 Random Numbers 210
Integer Sequences 210
Floating-Point Sequences 214
5.6 Problem Solving Applied: Instrumentation Reliability 215
5.7 Numerical Technique: Roots of Polynomials* 222
Polynomial Roots 222
Incremental-Search Technique 224
5.8 Problem Solving Applied: System Stability* 226
Newton—Raphson Method* 232
5.9 Numerical Technique: Integration* 236
Integration Using the Trapezoidal Rule 236
Summary 240
Chapter 6
ONE-DIMENSIONAL ARRAYS 250
ENGINEERING CHALLENGE: Hurricane Tracking 250
6.1 Arrays 251
Definition and Initialization 252
Computation and Output 256
Function Arguments 260
6.2 Problem Solving Applied: Hurricane Categories 263
6.3 Statistical Measurements 269
Simple Analysis 269
Variance and Standard Deviation 271
Custom Header Files 274
6.4 Problem Solving Applied: Speech Signal Analysis 274
6.5 Sorting Algorithms 280
Selection Sort 281
6.6 Search Algorithms 282
Unordered Lists 283
Ordered Lists 283
6.7 Character Strings 285
C Style String Definition and I/O 285
String Functions 288
6.8 Problem Solving Applied: Palindromes 289
6.9 The string Class 293
Summary 295
Chapter 7
TWO-DIMENSIONAL ARRAYS AND MATRICES 300
ENGINEERING CHALLENGE: Terrain Navigation 300
7.1 Two-Dimensional Arrays 301
Declaration and Initialization 302
Computations and Output 306
Function Arguments 308
7.2 Problem Solving Applied: Terrain Navigation 311
7.3 Matrices* 316
Determinant 316
Transpose 317
Matrix Addition and Subtraction 318
Matrix Multiplication 318
7.4 Numerical Technique: Solution to Simultaneous Equations* 321
Graphical Interpretation 321
Gauss Ellimination 323
7.5 Problem Solving Applied: Electrical Circuit Analysis* 327
7.6 Higher Dimensional Arrays* 333
Summary 335
Chapter 8
AN INTRODUCTION TO CLASSES 342
ENGINEERING CHALLENGE: Simulation 342
8.1 Programmer Defined Types 343
8.2 Design and Implementation of Classes 345
Class Declaration 345
Class Implementation 347
8.3 Class Composition 353
8.4 Constructors 357
Initialization Lists 361
8.5 The vector Class 364
Parameter Passing 366
8.6 Problem Solving Applied: Calculating Probabilities 368
8.7 The UnitVector Class 381
Private Member Functions 382
Class Objects as Arguments to Member Functions 384
8.8 Problem Solving Applied: Simulation 385
Summary 392
Chapter 9
AN INTRODUCTION TO POINTERS 396
ENGINEERING CHALLENGE: Weather Patterns 396
9.1 Addresses and Pointers 397
Address Operator 398
Pointer Assignment 400
Pointer Arithmetic 403
9.2 Pointers to Array Elements 406
One-Dimensional Arrays 407
Character Strings 409
Pointers as Function Arguments 410
9.3 Problem Solving Applied: El Ni˜no[K1] -Southern Oscillation Data 415
9.4 Dynamic Memory Allocation 418
The new Operator 418
Dynamically Allocated Arrays 420
The delete Operator 420
9.5 Problem Solving Applied: Seismic Event Detection 422
9.6 Common Errors Using new and delete 428
9.7 Data Structures and the C++ Standard Template Library (STL) 430
The link Class 430
The stack Class 434
The queue Class 436
9.8 Problem Solving Applied: Concordance of a Text File* 438
Summary 444
Chapter 10
ADDITIONAL TOPICS IN PROGRAMMING WITH CLASSES 450
ENGINEERING CHALLENGE: Artificial Intelligence 450
10.1 Introduction to Generic Programming 451
Function Templates 452
Overloading Operators 456
The pixel Class 456
Arithmetic Operators 458
friend Functions 463
10.2 Problem Solving Applied: Color Image Processing 468
10.3 Recursion 475
Factorial Function 475
Fibonacci Sequence 477
Binary Trees 479
10.4 Class Templates 490
10.5 Inheritance 496
The Square Class 497
The Cube Class 502
Virtual Methods 504
10.6 Problem Solving Applied: Iterated Prisoner’s Dilemma 507
Summary 516
Appendix A C++ Standard Library 521
Appendix B ASCII Character Codes 529
Appendix C Using MATLAB to Plot Data from ASCII Files 533
C++ Program to Generate a Data File 533
ASCII Data File Generated by the C++ Program 534
Generating a Plot with MATLAB 534
Appendix D References 536
Appendix E PRACTICE! Solutions 537
Index 553
[K1]Comp: fix accent to be over “n”
Dr. Delores M. Etter, Assistant Secretary of the Navy for Research, Development and Acquisition, leads R&D and acquisition throughout the U.S. Navy. She is the first United States Naval Academy faculty member to hold the Office of Naval Research Distinguished Chair in Science and Technology. Dr. Etter is a member of the National Academy of Engineering, and a fellow of IEEE, AAAS, and ASEE.
Jeanine Ingber was educated at the University of Michigan where she completed a Master’s Degree in Computer Aided Design Engineering. She held faculty positions at Iowa State University and the University of New Mexico, and has been honored in three separate editions of Who’s Who Among American Teachers. Jeanine is currently the owner of IngberConsulting.com and works as a computer consultant and technical trainer offering short courses in C, C++, Java, and Object Oriented Design using UML.
Engineering Problem Solving with C++
Second Edition Delores M. Etter - Jeanine A. Ingber
Thoroughly updated for today's new challenges, this is the most complete, accessible introduction to engineering problem solving with ANSI C++, incorporating a clear writing style and a well-illustrated introduction to procedural, and object-oriented, problem solutions.
Delores M. Etter and Jeanine A. Ingber introduce an easy-to-use, five-step methodology for engineering problem solving. Readers learn how to state problems clearly; describe the required I/O; work simplified hand examples; develop appropriate algorithms and convert them to C++ programs; and finally, test problem solutions with diverse data sets.
Etter and Ingber introduce basic C++ features that support all facets of engineering problem solving, including data types, control structures, file streams, arrays, functions, pointers, dynamic data structures, and the use of pre-defined functions and classes provided in the Standard C++ Library. Additional C++ features that support generic programming, data abstraction, and object-oriented problem solutions are introduced in later chapters, including function templates, class templates, iterators, inheritance, virtual methods, and UML diagrams. The authors also present powerful top-down design and stepwise refinement techniques utilizing decomposition outlines, pseudocode, and flowcharts.
Readers can practice new skills with four types of exercises that are used throughout the text, including Practice! exercises, Modify! exercises, Exam Practice! exercises, and an extensive collection of Programming Problems provided at the end of every chapter. The authors also demonstrate their methodology in Problem Solving Applied sections included in every chapter of the text. Problem Solving Applied Problems focus on current Engineering Challenges, presented at the beginning of each chapter.
Features of this new edition include:
About the Authors
Dr. Delores M. Etter has been widely recognized for her innovative textbooks in problem solving for engineering and science students. She has been a member of the Electrical and Computer Engineering faculty at the United States Naval Academy, the University of Colorado, Boulder, and the University of New Mexico. Dr. Etter is a member of the National Academy of Engineering and a fellow of IEEE, AAAS, and ASEE.
Jeanine A. Ingber is an independent training consultant who works extensively with Sandia National Labs. She has held faculty positions at Iowa State University and the University of New Mexico and has recieved numerous teaching honors.
Bridge Page t/a Engineering Problem Solving with C++ Bridge Page, 2/E
Etter & Ingber
©2008 | Prentice Hall | On-line Supplement | Instock
ISBN-10: 0136011780 |
ISBN-13: 9780136011781
URL:
http://www.prenhall.com/etter
Instructor Resource Center t/a Engineering Problem Solving with C++, Etter, 2/E
Etter & Ingber
©2008 | Prentice Hall | On-line Supplement | Instock
ISBN-10: 0136011772 |
ISBN-13: 9780136011774
View Downloadable Files
MyTest test bank to accompany Engineering Problem Solving with C++
Simons & Ingber
©2009 | Prentice Hall | On-line Supplement | Instock
ISBN-10: 0132085666 |
ISBN-13: 9780132085663
URL:
http://www.prenhall.com/etter
View Downloadable Files
ESource Access Pack
Esource
©2001 | Prentice Hall | Paper | Instock
ISBN-10: 0130904007 |
ISBN-13: 9780130904003
Interwrite Personal Response System
EduCue, Addison-Wesley & Benjamin Cummings
©2004 | Prentice Hall | Electronic Supplement | Instock
ISBN-10: 0321267354 |
ISBN-13: 9780321267351
Give your students a choice! PearsonChoices products are designed to give your students more value and flexibility by letting them choose from a variety of text and media formats to best match their learning style and their budget.
Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students, see the Packages Tab.


Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students, browse our available packages below, or contact your Pearson Higher Education representative to create your own package.
Package ISBN-10: 0138137366 | ISBN-13: 9780138137366
©2008 | Instock | Suggested retail price: $111.00 | Buy from myPearsonStore
This package contains:
Package ISBN-10: 0137156545 | ISBN-13: 9780137156542
©2008 | Instock | Suggested retail price: $145.87 | Buy from myPearsonStore
This package contains:
Package ISBN-10: 0137058055 | ISBN-13: 9780137058051
©2009 | Instock (Additional assembly time required) | Suggested retail price: $117.67 | Buy from myPearsonStore
This package contains: