This easy-to-follow textbook provides a student-friendly introduction to
programming and algorithms. Emphasis is placed on the threshold concepts
that present barriers to learning, including the questions that students
are often too embarrassed to ask. The book promotes an active learning
style in which a deeper understanding is gained from evaluating,
questioning, and discussing the material, and practised in hands-on
exercises. Although R is used as the language of choice for all
programs, strict assumptions are avoided in the explanations in order
for these to remain applicable to other programming languages. Features:
provides exercises at the end of each chapter; includes three mini
projects in the final chapter; presents a list of titles for further
reading at the end of the book; discusses the key aspects of loops,
recursions, program and algorithm efficiency and accuracy, sorting,
linear systems of equations, and file processing; requires no prior
background knowledge in this area.