Some documents for the S6 level in ICT. (Quelques documents pour la classe de S6 en TIC.)

Official syllabus (Programme officiel) :

It is the 2019 syllabus which is available at the following link (Il s'agit du programme 2019 qu'on peut télécharger au bout de ce lien).

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.

08/09/2020:
  * Work1 (paper): Automata (Automates). Original idea : Alain SATABIN.
  * Work2 (computer): Reeborg's World (Le monde de Reeborg).

15/09/2020:
  * Work3 (paper): Assignments (Affectations).
  * Work4 (computer): First steps in Python3 (Introduction à Python3). Original idea : Alain SATABIN.

22/09/2020:
  * Work5: Loops.

29/09/2020:
  * Work6: Functions.

06/10/2020:
  * Work7: Overview (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!).

13/10/2020:
  * Test n°1 (45 minutes): The subject.
  * Work8: Arrays.

20/10/2020:
  * Work9: Arrays of arrays ; the associated Python code ; going further on this subject by studying faster intersection.

03/11/2020:
  * Work (from home): Work with the book Invent Your Own Computer Games with Python (4th edition, 2017, written by Al Sweigart). Some material from the book is also available on Teams.
  * Step 1: install Python3 + pygame, see the chapter Introduction. The only difference from what is written in the book (which is from 2017) is that pygame now works with all Python3 releases (see pygame installation), so please choose the latest Python3 release to install (3.7.7 or greater is recommanded).
  * Step 2: read chapters 1 (The Interactive Shell) and 2 (Writing Programs), and do the exercises on your Python3 installation, to get used to it. All exercises are easy, we already covered the material in class.

10/11/2020:
  * Work (from home): Work with the book Invent Your Own Computer Games with Python (4th edition, 2017, written by Al Sweigart). Some material from the book is also available on Teams.
  * Make sure you completed Step 1 and 2 from last week.
  * Step 3: read chapters 3 (Guess the Number) and 4 (A Joke-telling Program), and do the exercises on your Python3 installation. In Chapter 3, the new material is the break statement (to break a loop). In Chapter 4, the new material is some advanced uses of the print function (special characters, printing without creating a new line --- in class, we created a string, made it grow and printed it only at the end, here is another option to do the same).

17/11/2020:
  * Work (at school): 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).

24/11/2020:
  * Work (from home): I added a lot of documentation in each of the 4 games. Please take a look at the modified files (in the previous paragraph), and try to make 1 or 2 functions in the game you chose. Do not hesitate to ask for help in Teams or by e-mail: some function are way harder than the others...

01/12/2020:
  * Work (from home): VISIOCONFERENCE in Teams.

22/12/2020:
  * Work (from home): 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.
   Have a look at the two tasks needed for the B test: hand out your code + explanation on Teams (by the end of January, the 15th); prepare an oral presentation (for January, the 19th).

12/01/2021:
  * Work (from home): VISIOCONFERENCE in Teams.
   You must hand out your code at the end of the week, so that I can have a look at it before the B Test. There will be a team grading on your code. You must also explain your code with comments and/or with a text document.

19/01/2021:
  * B Test: 20 minutes per group (or 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.

26/01/2021:
  * Work10: 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'').

02/02/2021:
  * Work11 (from home): 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 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 !

09/02/2021:
  * Work12: Handling data (3/3) ; the associated Python code (code for question 2) and dataset. Dataset source: https://www.data.gouv.fr/fr/datasets/departements-de-france/.
Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder !

23/02/2021:
  * Work13: 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'').

02/03/2021:
  * Work14 (from home): Databases (2/4). This work is ``paper only'' (no computer needed), just to learn the SQL language. We will learn to use the SQL language in python next week, in class. Please give me the result of your work in the Teams assignment, this will count for your A grade. Original idea from the course ``Base de données'', Remi EYRAUD.

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

16/03/2021:
  * Work16 (from home): first, look at the elements of correction from work 15 of last week.
Then, for the remaining questions, no answers are provided, I ask you to answer them for this week. Don't spend too much time on each question, if you really do not see how to solve some of them, it's not a problem. Don't forget to also try the questions from work 16 (also in the same file / worksheet that I gave you last week).

23/03/2021:
  * Work17: Databases (4/4) ; the associated files: dataset (1/4), dataset (2/4), dataset (3/4), and dataset (4/4) for section 1. Original idea from the book ``L'Informatique (vraiment) Pour Tous en classes préparatoires aux grandes écoles'', Philippe MOREAU (Chapter 12, ``Les bases de données'').
Don't forget that, for the python code to work, you need to put both the code and the dataset in the same folder !

13/04/2021:
  * Work18: Python - rehearsal exercises (1/2) ; the associated Python code.
PS: I'll post on my website the ``cheat sheet'' that we will make together, so that you can use it next week and for the B test.

20/04/2021:
  * Make sure that we are prepared about the SQL part of the B test. The goal is to finish work17.
PS: The formula booklet is available here.

27/04/2021:
  * (at home): check elements of correction from work 17.
Work19: Then, an assignment to handle on Teams (python algorithms on the game ``Snakes and ladders''), so that I can see what you can do and give you my last pieces of advice before the B test: Python - rehearsal exercises (2/2) ; the associated Python code.

04/05/2021:
  * B Test (2 periods) : half of the test on paper, half on computer. Half of what is asked will be on algorithms/Python, half on databses/SQL.
  * Part without computer : The subject.
  * Part on computer: The subject ; associated files: Python code for section 1; Python code for section 2; dataset for section 2.

18/05/2021:
  * Work20: Digital images (1/3) ; 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.

25/05/2021:
  * Work21: Digital images (2/3) ; the associated files: TP21_Image1.pgm. Original idea from the book ``Informatique et sciences du numérique'', Gilles DOWEK (Chapter 19, ``Dessiner'').
  * First sub-work (school logo): TP21_Images_logo.py; TP21_Logo_EEB1.pgm;
  * Second sub-work (houses): TP21_Images_merge.py; TP21_House.pgm; TP21_Skyscraper.pgm
  * Third sub-work (Mona Lisa): TP21_Images_colors.py; TP21_Joconde_Original.ppm.

01/06/2021:
  * Freed from school in the morning (Philosophy B Test in the afternoon).

08/06/2021:
  * Correction of the B Test.
  * Work22: Digital images (3/3) ; the associated files:
  * First sub-work (Mona Lisa, from Work 21): TP21_Images_colors.py; TP21_Joconde_Original.ppm.
  * Second sub-work (Amazon river): TP22_Amazon_Original.ppm.

Stay calm and focused for the rest of your B Tests. Have some nice holidays and see you next year!