This text evolved from a course taught by the first author at Columbia University. The material is suitable for an introductory course in number theory for undergraduate students. The student is assumed to have completed a course in high-school algebra, but no knowledge of calculus is necessary for the first half of the book, hence much of the material can be profitably used at the high school level.

A novel feature of the book are the numerous computer experiments by which one can discover interesting properties of integers. Experiment and pattern recognition are an important part of number theory, the means by which new results are discovered. The purpose of the experiments is to gather sufficient numerical evidence to observe the underlying patterns and make a reasonable conjecture. The reader is invited to discover the important results and to prove them. While many results of the experiments are proved in a later chapter of the text when it is essential for the development of the subject, many more are left for the reader's enjoyment.