This course introduces the basics of programming, both in the thinking logic to turn a real problem into a functional code and in the practical aspects by aiming to get you comfortable with scripting and code development while providing insights to the limits of computer-based computations.
Especially, you will learn the basics of the Python language and exploit the strengths of its grammar to develop structured scripts and programs. Requiring no prior-knowledge in programming, the course is aimed to develop your capability of writing your own script/codes, adapting to a variety of situations and objectives.
Hence, examples and exercises will be chosen with three goals in mind
- show the practical utility of Python as a general-purpose language (file manipulations, web programming, ...)
- show its possible use as a tool for mathematical exploration (as an easy-going prequel to numerics, in the direction to analyse maths- related objects as e.g. exploring the behaviour of sequences, approximating limits and integrals, performing matrix-multiplication, computing roots, and to develop a tool-kit for scientific visualisation)
- show its power as a quick prototyping language for scientific programming and data science.
Note: While the course is designed to be of entry-level in programming, it is designed for mathematics students and will extensively rely on structured data such as arrays (and matrices) and on logical thinking (true, false, and, or, etc). Those two notions will be discussed at the begining of the lecture. However, should you like to follow the course from an other background, an strong interest in mathematics is highly desirable.