Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



27 Commits

Repository files navigation

Some modern programming exercises

Run on About online demonstrations

license: MIT

This project shows how modern programming exercises should be made. This exercises have a graphical user interface instead of the usual textual interface, which are less and less used, or even known, by most of the people which are mainly using smartphones. For more about the rationale behind this project, see

Simply retrieve the repository (git clone, or get the corresponding ZIP file here:, and, in a console, from to the root directory, python (you can change the language of the exercises by modifying You can also specifically launch an exercise with python (en|fr)/(A|B|C|Z_(1|2(a|b)|3)).py (for example: python fr/ You can (should) use python3 instead of python.

Alternatively, you can also use, so you have nothing to install on your computer. Follow this link, click on the green run button, select an exercise, and then click on the then displayed URL. To choose another exercise, click on the green restart button.

The files found under the en and fr root directories are examples of what the students have to figure out.

The A, B and C exercises are variations of the famous Hello, World! program, and are intended to familiarize the student with strings, string concatenation, function calling and definition… Exercise C is interactive.

'Hello world' as exercise with the Atlas toolkit

The Z series of exercises deals with more advanced programming concepts.

The Z_1 exercise deals with the solving of first-degree (in)equations. The student has to find out how to calculate the solutions of such an (in)equation, and can test if its code works properly through a convenient user interface, without having to program this interface.

First degrees (in)equation resolution as exercise with the Atlas toolkit

The Z_2a and Z_2b exercises are example of use of the turtle graphics API. Exercise Z_2b is interactive.

Using the tortoise library as exercise with the Atlas toolkit

The purpose of the Z_3 exercise is to program the hangman game. As for the other exercises, the student handles the user interface by using very simple functions and can therefore focus on the handling of the inputs from the user.

Using the tortoise library as exercise with the Atlas toolkit

NOTA: click on the above pictures to see the source code of the corresponding exercise.

In this other GitHub repository, the same game is elaborated step by step through a set of exercises.

The workshop/assets directory contains files used for the exercises. The ab sub-directory is for exercises A and B, the c, z_1, z_2a… respectively for the exercises C, Z_1, Z_2a… The content of the Body.html files will be put in the body section of the HTML main page, and the content of the Head.html files will be put in the head section of the same page. CSS rules are usually put in the latter file.

For the displaying, here are the currently available functions:

English Français
erase efface
display affiche
eraseAndDisplay effaceEtAffiche
warn alerte
ask demande

For the turtle graphics, here are the currently available functions:

English Français
up hausse
down baisse
forward avance
turnRight tourneDroite
turnLeft tourneGauche
setColorRGB fixeCouleurRVB
setColorHSL fixeCouleurTSL

This project is based on the Atlas toolkit. Other projects using this toolkit can be found here:


Modern programming exercises







No releases published

Sponsor this project