Some documents for the S6 level in ICT.

Official syllabus:

It is the 2019 syllabus which is available at the following link.

Use an online Python interpreter:

If you are working from home on a computer that does not allow the installation of any software, you can always program in Python thanks to an online interpreter: In the case where you can install something, it is probably better to do so, cf. next paragraph.

Download the Python Graphic User Interface (GUI):

The Python GUI that we use in class can be downloaded at Sourceforge is a website that provides storage for open-source projects, this means, in particular, that this software is free to use. You can click on the green button "Download", and it will download it in a few seconds.

However, it is better to use another installer for Python, as we will need to use more advanced features (for example pygame, a library which is not included in portable python). Please refer to the chapter Introduction of the book Invent Your Own Computer Games with Python (4th edition, 2017, written by Al Sweigart) to install Python3 + the pygame library.


Some of the documents shared in this section have been reproduced thanks to documents shared by other colleagues. Let them be thanked for eternity (and beyond). It is not easy to always create works ex nihilo, and their help was more than valuable.

  * Presentation of the option.
  * Work1 (paper): Automata.

  * Work2 (computer): Reeborg's World.

  * Work3 (paper): Assignments.
  * Work4 (computer): Guess the number ; the associated file (code from Al Sweigart).

  * Work5: Loops.

  * Work6: Functions ; the associated file

  * Work7: Overview of what we have seen so far (graded group work) ; elements of correction.
For exercise 2.3 ``Give the change'', it is possible to write a greedy algorithm that starts at the biggest bill and ends at the smaller one; as a side note, try this algorithm if the set of bills we use is 1, 4 and 6€... it does not work!

  * Work8: Arrays ; the associated file

  * First semester project (total duration: 5 weeks): group work to build a simple game. Original idea: Emmanuel ALLAUD. There are different choices:
  * Standard level project: connect four (cf. description);
  * Slightly more difficult projects: battleship (cf. description), the game of life (cf. description), or minesweeper (cf. description);
  * One-person project: hangman (cf. description).
  * Friday, December the 22nd (last week before the holidays): you must hand out your code, so that I can have a look at it at home before your oral presentations. There will be a team grading on your code. You must explain your code with comments and with a text document (approx. 2 pages).
  * January: oral presentation of your project with this oral presentation grading.

  * B Test: maximum 20 minutes per group (minimum 5 minutes per student).
   The grading grid, one per student (as opposed to the team grading for the code) is the following: oral presentation grading.

  * End of presentations.
  * Introduction of the 2nd semester subject: databases. The associated slideshow.

  * Work9: Handling data (1/3) ; the associated Python code and dataset (the same dataset encoded as an utf-8 file if needed). Dataset from the book ``Informatique et sciences du numérique'', Gilles DOWEK (Chapter 11, ``Structurer l'information'').

Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!

  * Work9: Elements of correction.
  * Work10: Handling data (2/3) ; the associated Python code and dataset. Dataset from the book ``Sciences numériques et technologie'', Sylvain ALBISSER and Sébastien BALNY (Chapter E, ``Les données structurées et leur traitement''). A similar dataset with more information can be found at

Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!

  * Work11: Handling data (3/3) ; the associated Python code (correction from work 10) and dataset. Dataset source:
Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!