This book is a gentle and sympathetic introduction to many of the problems of scientific computing, and the wide variety of methods used for their solutions. It is ideal for students taking a first course in numerical mathematics who need a low level entry to the subject. It gives an appreciation of the need for numerical methods for the solution of different types of problem, and discusses basic approaches. For each of the problems, at least some mathematical justification and examples provide both practical evidence and motivations for the reader to follow. Practical justification of the methods is presented through computer examples and exercises. The book also includes an introduction to MATLAB, but the code used is not intended to exemplify sophisticated or robust pieces of software; it is purely illustrative of the methods under discussion.