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: https://replit.com/languages/python3. 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 https://sourceforge.net/projects/portable-python/. 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.

Documents:

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.

07/09/2021:
  * Work1 (paper): Automata.
  * Work2 (computer): Reeborg's World.

14/09/2021:
  * Work2 (computer): Reeborg's World (continued).

21/09/2021:
  * Work3 (paper): Assignments.
  * Work4 (computer): First steps in Python3. Original idea : Alain SATABIN.

28/09/2021:
  * Work5: Loops.

05/10/2021:
  * Work6: Functions.

12/10/2021:
  * Work7: Overview of what we have seen so far (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!).

19/10/2021:
  * Test n°1 (45 minutes).
  * Work8: Arrays ; the associated file TP8_Arrays.py.

26/10/2021:
  * Work8: Finish the exercises.
  * Work9: Arrays of arrays ; the associated file TP9_Pizzas.py.

9/11/2021:
  * Work9: Finish the exercises.

16/11/2021:
  * Beginning of a group work to build a simple game. Original idea: Emmanuel ALLAUD.
   The choices are: battleship (cf. description), connect four (cf. description), the game of life (harder, cf. description), and minesweeper (cf. description).

23/11/2021, 30/11/2021:
  * Project (total duration: 4 weeks).
  * Wednesday, December the 22nd (just 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/or with a text document (approx. 4 pages).
  * Tuesday, January the 11th: oral presentation of your project with this oral presentation grading.
  * For those who want to go into the details of a ``good'' artificial intelligence for Connect Four, I wrote the following document: Connect Four AI. You are not required to do it, and you can perfectly have a 10 at your evaluation on the project without doing it. It is just for those of you who are interested.

30/11/2021:
  * Project week 1/2 for those who were in quarantine (total duration: 2 weeks).
  * Beginning of a one-person work to build a simple game: hangman (cf. description).

07/12/2021 and 14/12/2021:
  * Two weeks of B Tests.

[UPDATED] 21/12/2021:
  * [Online] Advance your project as you can, by distance.

[UPDATED] 11/01/2022:
  * Last project week.

[UPDATED] 14/01/2022:
  * Deadline for sending your code + explanation. You must hand out your code, so that I can have a look at it at nome before your oral presentations. There will be a team grading on your code. You must explain your code with comments and/or with a text document (approx. 4 pages).

[UPDATED] 18/01/2022:
  * B Test: maximum 20 minutes per group (minimum 5 minutes per student) --- or 10 minutes for the one-person projects.
   The grading grid, one per student (as opposed to the team grading for the code) is the following: oral presentation grading.

01/02/2022:
  * Work10: Handling data (1/2) ; 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!

15/02/2022:
  * Class canceled: S6 level on KOEZIO school trip.

08/02/2022, [not 15/02/2022: KOEZIO school trip], 01/03/2022, 08/03/2022, 15/03/2022, 22/03/2022, 29/03/2022:
  * Inside the Metaverse: slideshow; some links.

05/04/2022:
  * (Your teacher is absent ; have nice holidays!).

26/04/2022:
  * Work11: Handling data (2/2) ; 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 https://www.data.gouv.fr/fr/datasets/communes-de-france-base-des-codes-postaux/.

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

  * Work12: Databases (1/4) ; the associated slideshow (containing the information already in the subject). Original idea from the book ``Apprendre le développement WEB au lycée'', Cyprien ACCARD (Chapter J, ``Bases de données relationnelles'').

03/05/2022:
  * Work13: Databases (2/4). This work can be done ``paper only'' (no computer needed), just to learn the SQL language, but you can start using the sqlite3 library thanks to the associated Python code. Original idea from the course ``Base de données'', Remi EYRAUD.

10/05/2022:
  * Work14: Databases (3/4) ; the associated files: Python code, dataset (1/2) and dataset (2/2). Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!
PS: And don't forget to check elements of correction from work 13 of last week: elements of correction.
PPS: I'll give you and put there elements of correction for this week's work after the course: elements of correction

17/05/2022:
  * Work15: Databases (4/4) ; the associated files: Python code, dataset (1/2) and dataset (2/2). Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!

B Test Rehearsal:
  * B Test from last year: The subject ; associated files: Python code and dataset for section 2.
Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!
  * Elements of correction: The document ; associated file: Python code for section 2.

31/05/2022:
  * B Test: Databases: The subject ; associated files: Python code and dataset.
Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder!
.

07/06/2022:
  * Work16: Digital images: a (very) short introduction ; the associated Python code. The introduction is a translation of a document I created for a formation in 2014, see the original document. Original idea for the ``greyscale'' exercises : Evelyne LAURENT.