Cover image for An introduction to C++ and numerical methods
Title:
An introduction to C++ and numerical methods
Personal Author:
Publication Information:
New York, NY : Oxford University Press, USA, 1999
Physical Description:
x, 273 p. ; 24 cm.
ISBN:
9780195117677

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010190942 QA297 O77 1999 Open Access Book Book
Searching...

On Order

Summary

Summary

An Introduction to C++ and Numerical Methods provides a brief yet comprehensive introduction to programming and numerical methods for students in engineering, chemistry, physics, and applied mathematics. It is suitable for second semester or second year students who have had at least a semester of calculus.
This text offers students both an introduction to programming in C++ and clear explanations of the basics of numerical methods, including numerical integration and the solution of ordinary differential equations, nonlinear equations, and systems of linear equations. It is unique among textbooks at this level in its extensive coverage of numerical methods used in scientific and engineering computation.
An Introduction to C++ and Numerical Methods is designed to help students move quickly into writing interesting and sophisticated programs. The text begins with an introduction to scientific computing and the basic constructs of C++, including variables and assignment, typing, if statements, for and while loops, functions, one-dimensional arrays, and the cout and cin objects. After students have gained some experience with programming using these constructs, the topics are later revisited in greater detail, leading up to the important topic of classes and object-oriented programming. Throughout the text Ortega and Grimshaw emphasize the basic paradigms for constructing good programs and detecting errors.


Author Notes

James Ortega and Andrew Grimshaw are both in the Computer Science Department, University of Virginia.


Reviews 1

Choice Review

Ortega and Grimshaw direct their book toward undergraduate students taking a course of study in numerical methods. Unlike many earlier books written for use with the BASIC or FORTRAN programming languages, this one gives the reader an introduction to implementing numerical methods using C++. Since C++ is likely one of the more widely used languages of the current day in engineering and science, this treatment is very appropriate. No previous programming experience is required to use this book. The authors take a very gentle and gradual approach to introducing programming concepts. Nevertheless, a significant number of numerical methods are covered including integration, finding zeros using the bisection algorithm and Newton's method, solutions to differential equations using Euler's method, and solving simultaneous systems of equations using Gaussian elimination and least-squares approximation. The quality of the presentation is high, and the book includes a generous number of figures and tables. Undergraduates. F. H. Wild III; University of Rhode Island


Table of Contents

Preface
Part I Basic Constructs
1 Introduction
1.1 Computers and Software
1.2 Binary Numbers and Memory
1.3 Rounding Errors
1.4 Program
2 A First C++ Program
2.1 Computation and Assignment
2.2 Variable Types
2.3 Input and Output
2.4 A Complete Program
2.5 Errors and Debugging
3 Decisions, Decisions
3.1 The if Statement
3.2 Logical Operators
3.3 Nested If and Switch Statements
3.4 Good Programming Practice
4 Around and Around: Iteration
4.1 The for Statement
4.2 The while Statement
4.3 An Approximation to ex
4.4 Advanced Loop Control
5 Functions
5.1 Library Functions
5.2 User-Defined Functions
5.3 More General Functions
5.4 Local vs. Global Variables
6 Numerical Integration
6.1 Approximate Integration Formulas
6.2 Flow Charts
6.3 An Integration Program
6.4 Discretization Error
7 Reading and Writing: Input/Output
7.1 Precision
7.2 Spacing
7.3 File Input/Output
7.4 The printf () Function
8 Solution of Nonlinear Equations
8.1 The Bisection Method
8.2 Newton's Method
8.3 Errors and a Combined Method
9 Lots of Values: Arrays
9.1 Array Declarations
9.2 Arrays and Functions
10 Differential Equations
10.1 The Initial Value Problem
10.2 Euler's Method
10.3 Systems of Equations
Part II Extensions of the Basic Constructs
11 More on Data Types and Operations
11.1 Other Fundamental Data Types
11.2 Operations
11.3 Characters and Strings
11.4 User-Defined Data Types
12 Lots More Values: Two-Dimensional Arrays
12.1 Two-imensional Arrays
12.2 Arrays and Functions
12.3 Arrays of Strings
13 Linear Equations
13.1 Least-Squares Approximation
13.2 Gaussian Elimination
13.3 Errors
13.4 Efficiency
14 More on Functions
14.1 Reference versus Value
14.2 Recursive and Inline Functions
14.3 Function Miscellanea
14.4 Libraries of Functions
15 Pointers
15.1 Pointer Variables
15.2 Pointers and Arrays
15.3 Pointers and Functions
15.4 Pointers and Strings
16 Dynamic Memory1
6.1 Dynamic Memory Allocation
16.2 Matrices and Strings
16.3 Linked Lists
Part III Object-Oriented Programming
1 Classes and Objects1
7.1 A Simple Class
17.2 Classes and Functions
17.3 Stream Classes
18 Array
Classes and Dynamic Memory
18.2 Dynamic Memory Allocation
18.3 A Matrix Class
19 Inheritance
19.1 Derived Classes
19.2 Polymorphism and Virtual Functions
19.3 Linear EquationsFurther Reading
Appendix 1 ASCII Character Codes
Appendix 2 Library Functions
Index