Have one to sell? Sell yours here
Engineering Problem Solving with C++
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Engineering Problem Solving with C++ [Paperback]

Delores M. Etter (Author), Jeanine A. Ingber (Author)
3.8 out of 5 stars  See all reviews (4 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Paperback --  
There is a newer edition of this item:
Engineering Problem Solving with C++ (3rd Edition) Engineering Problem Solving with C++ (3rd Edition)
$93.49
In Stock.

Book Description

September 6, 2002 0130912662 978-0130912664
For one/two semester courses in Engineering and Computer Science at the freshman/sophomore level. This introduction to engineering problem solving with ANSI C++ programming language employs an easy-to-read problem solving methodology to consider a diverse range of Grand Challenges. The emphasis on engineering and scientific problem solving remains an integral part of the text. An object-based programming approach is utilized starting with Chapter 8.

Customers Who Bought This Item Also Bought


Editorial Reviews

From the Back Cover

Best-selling author Delores M. Etter and computer science and engineering educator coauthor Jeanine A. Ingber provide an introduction to engineering problem solving with an object-based programming approach using the ANSI C++ programming language. The authors employ an easy-to-use problem solving methodology to consider a diverse range of grand challenges, including prediction of weather, climate, and global change; computerized speech understanding; mapping of the human genome; improvement in vehicle performance; enhanced oil and gas recovery; and engineering simulation. The emphasis on engineering and scientific problem solving remains as an integral part of the text.

Introduces engineering problem solving with the following objectives:

  • To develop a consistent methodology for solving engineering problems.
  • To illustrate the problem-solving process with C++ through a variety of engineering examples and applications.
  • To introduce the concept of object-based programming and the features of C++ that support it, while focusing on the fundamentals of programming.

Key features:

  • Presents a five-step process used consistently throughout the text for solving engineering problems.
  • Introduces objects early in the discussion of data types and standard input and output.
  • Discusses fundamental capabilities of C++ for solving engineering problems, including control structure, data files, and functions.
  • Provides flexibility in covering topics.
  • Exposes the reader to the template functions.
  • Addresses one-dimensional arrays and Matrices with an introduction to the vector class.
  • Explains programmer-defined classes, including overloaded operators and inheritance.
  • Explores the use of pointers and dynamic memory allocation.
  • Includes an introduction to dynamic data structures using classes supported in the C++ Standard Library.
  • Offers an Instructor's Resource CD-ROM with Microsoft PowerPoint presentations.

Excerpt. © Reprinted by permission. All rights reserved.

Object-based programming is used in many fields of engineering and science and is likely to be seen in the workplace. C++ is an object-based programming language derived from the C programming language, which makes it a good choice for an introduction to computing course for engineers and scientists. Using C++, object-based design and programming can be introduced early while focusing on the basic control structures, data structures, and functions necessary for scientific programming. The features of the C programming language that make it attractive for system-level operations are supported by C++, making the latter one of the most powerful and versatile programming languages available. This text was written to introduce engineering problem solving with an object-based programming approach. Our objectives are the following:

  • to develop a consistent methodology for solving engineering problems,
  • to present the object-based features of C++ while focusing on the fundamentals of programming,
  • to illustrate the problem-solving process with C++ through a variety of engineering examples and applications,
  • to provide an easy-to-understand, integrated introduction to function templates and classes defined in the Standard C++ Library.

To accomplish these objectives, Chapter 1 presents a five-step process that is used consistently in the rest of the text for solving engineering problems. Chapter 2 introduces the use of predefined objects and member functions in the discussion of data types and standard input and output. Chapters 3-5 present the fundamental capabilities of C++ for solving engineering problems, including control structures, data files, and functions. Chapters 6 and 7 present arrays and introduce the reader to function templates and the vector class. Chapter 8 is an introduction to programmer-defined classes. Chapter 9 introduces the use of pointers, dynamic memory allocation, and classes defined in the Standard C++ library to implement dynamic data structures. Chapter 10 provides a more in-depth look at classes, including overloading operators, inheritance, and virtual functions. Throughout all these chapters, we present a large number of examples from many different engineering, science, and computer science disciplines. The solutions to these examples are developed using the five-step process and Standard C++.

Prerequisites

No prior experience with the computer is assumed. The mathematical prerequisites are college algebra and trigonometry. Of course, the initial material can be covered much faster if the student has used other computer languages or software tools.

Course Structure

The material in these chapters was selected to provide the basis for a one-term course in engineering and scientific computing. These chapters contain the essential topics of mathematical computations, character data, control structures, functions, arrays, classes, and pointers. Students with background in another computer language should be able to complete this material in one semester. A minimal course that provides only an introduction to C++ can be designed using the nonoptional sections of the text. (Optional sections are indicated in the Contents with an *.) Three ways to use the text, along with the recommended chapter sections, are

  • Introduction to C++. Many freshman introductory courses introduce the student to several computer tools in addition to an introduction to a language. For these courses, we recommend covering the nonoptional sections of Chapters 1-7. This material introduces students to the fundamental capabilities of C++, and they will be able to write substantial programs using mathematical computations, character data, control structures, functions, and arrays.
  • Problem Solving with C++. In a semester course devoted specifically to teaching students to master the C++ language, we recommend covering all nonoptional sections of Chapters 1-10. This material covers all the fundamental concepts of the C++ language, including mathematical computations, character data, control structures, functions, arrays, classes, and pointers.
  • Problem Solving with C++ and Numerical Techniques. Upper-level students or students who are already familiar with other high-level languages will be able to cover the material in this text very quickly. In addition, they will be able to apply the numerical technique material to their other courses. Therefore, we recommend that these students cover all sections of Chapters 1-10, including the optional material.

The chapters in this text were designed to give the instructor flexibility in the ordering of topics, especially regarding the decision of when to cover classes: before or after arrays. The introductory chapter on classes does not depend on the chapters on arrays, and the chapters on arrays do not depend on the introductory chapter on classes. The dependency chart on the next page illustrates the dependency of chapters.

Problem-Solving Methodology

The emphasis on engineering and scientific problem solving is an integral part of the text. Chapter 1 introduces a five-step process for solving engineering problems using the computer:

  1. State the problem clearly.
  2. Describe the input and output information, and determine required data types.
  3. Work a simple example by hand.
  4. Develop an algorithm and convert it to a computer program.
  5. Test the solution with a variety of data.

To reinforce the development of problem-solving skills, each of these five steps is clearly identified each time that a complete engineering problem is solved. In addition, top-down design and stepwise refinement are presented with the use of decomposition outlines, pseudocode, and flowcharts.

Engineering and Scientific Applications

Throughout the text, emphasis is placed on incorporating real-world engineering and scientific examples and problems. This emphasis is centered around a theme of grand challenges, which include

  • prediction of weather, climate, and global change
  • computerized speech understanding
  • mapping of the human genome
  • improvements in vehicle performance
  • enhanced oil and gas recovery
  • simulation

Each chapter begins with a photograph and a discussion of some aspect of one of these grand challenges that provides a glimpse of some of the exciting and interesting areas in which engineers might work. Later in the chapter, we solve a problem that not only relates to the introductory problem, but also has applications in other problem solutions. The grand challenges are also referenced in many of the other examples and problems.

Standard C++

The statements presented and all programs developed use C++ standards developed by the International Standards Organization and American National Standards Institute (ISO/ANSI) C++ Standards committee. ISO and ANSI together have published the first international standard for the C++ programming language. By using Standard C++, students learn to write portable code that can be transferred from one computer platform to another. Many of the standard capabilities of the C++ programming language are discussed in the text. Additional components of the C++ standard library are discussed in Appendix A.

Software Engineering Concepts

Engineers and scientists are expected to develop and implement user-friendly and reusable computer solutions. Learning software engineering techniques is therefore crucial to successfully developing these computer solutions. Readability and documentation are stressed in the development of programs. Additional topics that relate to software engineering issues are discussed throughout the text and include issues such as software life cycle, portability, maintenance, modularity, recursion, abstraction, reusability, structured programming, validation, and verification.

Four Types of Problems

Learning any new skill requires practice at a number of different levels of difficulty. We have developed four types of exercises that are used throughout the text to develop problem-solving skills. The first set of exercises is Practice! problems. These are short-answer questions that relate to the section of material just presented. Most sections are immediately followed by a set of Practice! problems so that students can determine if they are ready to continue to the next section. Complete solutions to all the Practice! problems are included at the end of the text.

The Modify! problems are designed to provide hands-on experiences with the programs developed in the Problem-Solving Applied sections. In these sections, we develop a complete C++ program using the five-step process. The Modify! problems ask students to run the program (which is available on our Instructor's Resource CD) with different sets of data to test their understanding of how the program works and of the relationships among the engineering variables. These exercises also ask the students to make simple modifications to the program and then run the program to test their changes.

Most chapters end with a set of Exam Practice! problems, and every chapter includes a set of Programming Problems. The Exam Practice! problems are short-answer questions that relate to the material covered in the chapter. These problems help students determine how well they understand the features of C++ presented in the chapter. The Programming Problems are new problems that relate to a variety of engineering applications, and the level of difficulty ranges from very straightforward to longer project assignments. Each programming problem requires that the student develop a c...


Product Details

  • Paperback: 494 pages
  • Publisher: Prentice Hall (September 6, 2002)
  • Language: English
  • ISBN-10: 0130912662
  • ISBN-13: 978-0130912664
  • Product Dimensions: 9 x 7.4 x 0.8 inches
  • Shipping Weight: 1.6 pounds
  • Average Customer Review: 3.8 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Best Sellers Rank: #550,627 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

4 Reviews
5 star:
 (1)
4 star:
 (1)
3 star:
 (2)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
3.8 out of 5 stars (4 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

6 of 6 people found the following review helpful:
5.0 out of 5 stars Excellent problem solving book!, March 8, 2005
This review is from: Engineering Problem Solving with C++ (Paperback)
As a computer science student who changed majors to computer engineering, this was one of the best programming books that I've read in college. It actually teaches you problem solving in a very straightforward manner. Not without flaws though, since there are quite a few typos and errors in the code of the programs in the book; however, everyone with at least some basic understanding of computer programming should be able to figure out what is wrong and fix them quite easily.

With the help of this book I was able to apply C++ to a lot of common problems encountered throughout all engineering fields; from statistics to simple physics and math problems. After taking the class, in which this book was used, this book has become one of my main references.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3.0 out of 5 stars Basic Computing Concepts over-worked/used, June 14, 2010
This review is from: Engineering Problem Solving with C++ (Paperback)
As a basic text book for engineering students not expecting to do any C++ programming or development, this book serves the reader. But...I expect anyone taking C++ in any engineering course is bound to do some real programming in C++. If the authors, Etter/Ingber, felt that the coverage of material (engineering problems) combined with the programming examples is a way to teach programming then I don't believe this book works. It is of some use in introducing students to programming concepts in a general sense.

Topical depth for this book; whether it is 'Grand Challenges', general engineering, or C++ programming, there is not a lot to sink your teeth into. I am also afraid that the authors did not focus on the language sufficiently and could misled students with respect to effective and efficient C++ programming. Programming examples provided are best defined as 'What to do if you have to quickly write a short book on engineering with a minor emphasis on C++!' effort.

Pluses:
Simple, easy to follow introduction for junior college or 1st year university students that are not planning to use programming languages as a career tool.

Well structured material, nice layout and use of text book document conventions along with a comprehensive summary for each capture.

Minuses:
Poor use of C++ in demonstration of engineering problems, and does not provide a constructive foundation at any level for C++ based programming.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4.0 out of 5 stars helpful to get started, May 14, 2010
Amazon Verified Purchase(What's this?)
This review is from: Engineering Problem Solving with C++ (Paperback)
I got this book for my programming class. It was helpful and it started at the beginning with basic code and gradually got harder as the chapters went on with more complex code. There are a good number of examples they give during each chapter and the code has comments in it to tell you what they are doing. They then explain the code briefly in a paragraph, by stating the new stuff shown. They also have pratice problems with the answers at the back. Its good to use as an source of examples and how to use functions. But i think the best way to learn programming is to actually do it, but as i said, this is a good source of explanation for functions and good source of examples for functions.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews


Only search this product's reviews



What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums



So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject