Goals

The goal of the units SINF B103 and SINF B104 is to introduce the students to the basic concepts of algorithmics and imperative programming, and to familiarise them with a rigourous approach for the construction of (small) programs.

 

Content

After introducing the key concepts behind the concepts of algorithms and programs, we study the basic elements of imperative programming: variable assignment and control structures (sequence, selection, and iteration). We pay attention to the formal reasoning underlying programming in particular for the construction of loops (the invariant method) and the creation of computation by iteration. We study the use sub-programs including parameter passing (by value and by reference) and emphasize their use for structuring a program. We study the use of tables and structures and introduce some key notions of algorithmics and complexity. The programming language used in this course is C, although the concepts discussed and the methodology to be acquired are independent of a particular language.
 

Assessment method

Students are evaluated based on (1) a portfolio of exercices that they make and that is presented at the teachers team at the end of the semester; (2) exercices submitted to Webcampus that are peer evaluated by the other students; (3) the quality of the exercices they have completed during the exercise sessions.
 

Sources, references and any support material

W. Vanhoof. Introduction à la programmation, notes de cours.
M. Sprankle, Problem solving and programming concepts, 2006 Pearson education.
N. Dale and C. Weems. Programming and problem solving with C. Jones & Bartlett, 1996
K. De Vlaminck and P. Verbaeten, Beredeneerd ontwerpen van programma's in Pascal, 1984
Kernighan, B.W. and Ritchie, D.M. Le langage C (ANSI). Dunod 2005

Language of instruction

Français
Training Study programme Block Credits Mandatory
Bachelor in Mathematics Standard 0 3
Bachelor in Mathematics Standard 1 3