Developed from the author’s many years of teaching computing courses, Programming in C++ for Engineering and Science guides students in designing programs to solve real problems encountered in engineering and scientific applications. These problems include radioactive decay, pollution indexes, digital circuits, differential equations, Internet addresses, data analysis, simulation, quality control, electrical networks, data encryption, beam deflection, and many other areas.
To make it easier for novices to develop programs, the author uses an object-centered design approach that helps students identify the objects in a problem and the operations needed; develop an algorithm for processing; implement the objects, operations, and algorithm in a program; and test, correct, and revise the program. He also revisits topics in greater detail as the text progresses. By the end of the book, students will have a solid understanding of how C++ can be used to process complex objects, including how classes can be built to model objects.
The book’s website at http://cs.calvin.edu/books/c++/engr-sci provides source code, expanded presentations, links to relevant sites, reference materials, lab exercises, and projects. For instructors, solutions to exercises and PowerPoint slides for classroom use are available upon qualifying course adoption.
Table of Contents
Introduction to Computing
Programming and Problem Solving—Software Engineering
Types in C++
Getting Started with Expressions
Functions and Libraries
More Selection Control Structures
More Repetition Control Structures
Functions in Depth
Files and Streams
Arrays and the vector Class Template
Multidimensional Arrays and Vectors
Pointers and Linked Structures
Answers to Test Yourself Questions
Appendix A: ASCII Character Codes
Appendix B: C++ Keywords
Appendix C: C++ Operators
Appendix D: Other C++ Features
Larry Nyhoff is a professor emeritus at Calvin College, where he continues to teach part-time. He retired in 2003 after 41 years of teaching mathematics and computing. Upon retirement, Professor Nyhoff was awarded the College’s highest faculty honor, the Presidential Award for Exemplary Teaching. He earned a PhD from Michigan State University, has co-authored more than 25 textbooks on programming in Fortran, Turbo Pascal, Modula-2, Java, and C++, and has authored several textbooks on introductory data structures.
"The book is lavishly illustrated with examples and exercises, which would make it both an ideal course companion and a book for private study. The author’s abilities to explain briefly the history of computing and to write an engaging text are to be commended. If you buy only one text on programming in C++, then this should be the one for you."
—Carl M. O’Brien, International Statistical Review (2013), 81