This textbook is an introduction to Scientific Computing, in which several numerical methods for the computer solution of certain classes of mathematical problems are illustrated. The authors show how to compute the zeros or the integrals of continuous functions, solve linear systems, approximate functions by polynomials and construct accurate approximations for the solution of ordinary and partial differential equations. To make the presentation concrete and appealing, the programming environments Matlab and Octave, which is freely distributed, are adopted as faithful companions. The book contains the solutions to several problems posed in exercises and examples, often originating from specific applications. A specific section is devoted to subjects which were not addressed in the book and contains the bibliographical references for a more comprehensive treatment of the material. The second edition features many new problems and examples, as well as more numerical methods for linear and nonlinear systems and ordinary and partial differential equations.