Ensimag Rubrique Formation 2022

Introduction to imperative programming - 3MMBPI

  • Number of hours

    • Lectures 6.0
    • Projects -
    • Tutorials 25.5
    • Internship -
    • Laboratory works 33.0
    • Written tests -


    ECTS 5.0


This course is an introduction to structured and imperative programming.
It does not require any prerequisite and is open to beginners.
By the end of the semester, students will know basic data structures (arrays, linked lists) and classic algorithms (looping, searching, sorting).
All exercices and lab sessions will be implemented using the Python language.


Christophe RIPPERT, Manuel SELVA


Imperative programming using the Python language.
Basic and arithmetic algorithms, searching, looping and sorting in quadratic time.
Classic data structures: arrays, linked lists, stacks and queues.
Introduction to reasoning with assertions and identifying loop invariants.
Good programming methods (thinking before coding), intensive lab work and basic debugging methodology.


No prerequisite: this course is open to beginners.


Students will take a pratical exam. During this exam, no documents are allowed, except a single sheet of handwritten notes, in A4 format.

    • MCC en présentiel **

Session 1 : N1 = E1
- N1 = note finale de session 1
- E1 = note de l'examen de session 1 sur machine (fin du semestre)

Session 2 : N2 = E2 avec
- N2 = note finale de session 1
- E2 = note de l'examen de session 2 sur machine


The course exists in the following branches:

  • Curriculum - Core curriculum - Semester 5
see the course schedule for 2023-2024

Additional Information

Course ID : 3MMBPI
Course language(s): FR

The course is attached to the following structures:

You can find this course among all other courses.