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).
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.
* Work1 (paper): Automata (Automates).
* Work2 (computer): Reeborg's World (Le monde de Reeborg) ; elements of correction.
* Work3 (paper): Assignments (Affectations).
* Work4 (computer): First steps in Python3 (Introduction Ó Python3).
* Work5: Loops.
* Work6: Functions.
* Work7: Overview ; elements of correction.
* Test n░1 (45 minutes): The subject ; elements of correction.
* Work8: Arrays.
* Work9: The subject ; the associated Python code ; going further on this subject by studying faster intersection.
* Work10 (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.
* Work11 (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).
* Work12 (at school): Beginning of a work group to build a simple game.
The choices are: battleship (cf. description), connect four (cf. description), the game of life (harder, cf. description), and minesweeper (cf. description).
* Work13 (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...
* Work14 (from home): VISIOCONFERENCE in Teams.
* Work15 (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).
* Work16 (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.
* 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.