Semaine 1 : introduction à l’informatique et premiers programmes#
Cours#
TD : Notion d’algorithme#
TP : prise en main, premiers programmes avec laby#
Tout exercice non marqué d’un ♣ est à terminer pour la semaine prochaine.
Introduction#
Dans ce premier TP vous allez écrire de petits programmes de façon ludique (faire sortir une fourmi d’un labyrinthe, etc), occasion d’avoir un premier contact avec quelques constructions (conditionnelles, boucles, fonctions) que nous approfondirons par la suite.
Pour cela, nous utiliserons des feuilles d’exercices interactives
Jupyter
. Jupyter
est une application web qui permet de programmer
interactivement dans de nombreux langages (Python
, C++
, …), un
peu comme une super calculatrice, et de rédiger des documents
interactifs.
Exercice 1 : Premiers pas avec Jupyter#
Ouvrez la feuille de travail 00-prise-en-main-jupyter.md.
Suivez les instructions qu’elle contient.
Notes aux enseignants
Dans ce TP, il y a beaucoup de petites feuilles. Du coup, si celles-ci
ne sont pas arrêtées explicitement, il y a beaucoup de noyaux
simultanés qui tournent. C’est pourquoi on leur recommande,
lorsqu’ils ont fini une fiche, d’utiliser le menu Fichier -> Fermer et arrêter
, afin d’éviter de dépasser leur quota de mémoire utilisée.
Exercice 2 : Dépôt de votre travail#
Revenez au tableau de bord du cours
Indication
Recherchez l’onglet
; si vous l’avez fermé, revenez à la page d’accès au matériel pédagogique et suivez les instructions.
Cliquez sur «Déposer» sur la ligne «Semaine 1».
Sélectionnez votre groupe et validez.
Vous devez voir apparaître « Statut: Dépôt du devoir Semaine1: ✅ terminé » sous le tableau de bord.
Consultez le dépôt
Semaine1
sur GitLab en cliquant sur le lien avec votre nom apparau dans la colonne « Dépot ».Votre travail est maintenant sauvegardé et partagé avec votre enseignant. Vous pouvez y accéder depuis chez vous.
Pensez à déposer systématiquement votre travail à la fin du TP pour que tout ce que vous avez fait soit bien sauvegardé sur le serveur gitlab et consultable par vos enseignants et enseignantes.
En bref
MyDocker :
mets à votre disposition un environnement virtuel pour travailler sur les feuilles du cours;
peut être utilisé depuis n’importe où avec un simple navigateur web;
vous sert à réaliser vos TP à l’université et à les continuer / réviser depuis chez vous.
GitLab :
est un service de stockage (géré avec git) où sont hébergés les TP;
vous sert à télécharger les feuilles de travail;
vous sert à sauvegarder votre travail (par exemple en cas de fausse manœuvre ou de problème sur MyDocker);
vous sert à rendre disponible votre travail pour qu’ils puissent être consultés par vos enseignants et enseignantes (pour vous aider, vous débloquer, ou vérifier votre travail);
En cours de développement : sert à vous donner un aperçu de votre avancement et un retour automatique sur votre travail.
Exercice 3 : Premiers programmes en jouant#
Notes aux enseignants
Laby
n’est pas juste un jeu. Le but est de capitaliser les notions que les élèves auront ainsi perçu de manière intuitive, comme l’exécution séquentielle d’un programme, les boucles, les conditionnelles, les fonctions, … Pour donner l’intuition des fonctions, ne pas hésiter à faire le parallèle avec le TD (exercice 1 question 2).Sur le début de laby, certains ne comprennent pas trop la démo ni ce qu’il faut faire. Leur expliquer, par exemple au moyen d’une démonstration au vidéo projecteur (2022-2023 : cela a été fait en amphi; probablement pas besoin de le refaire).
Une erreur fréquente des élèves est d’oublier de mettre
debut();
.Penser aussi à les inciter fortement à utiliser les indications (boucle while pour les labyrinthes 2a et 2b, fonction pour le 2c…), surtout pour les élèves qui s’en sortent pas trop mal.
Le jeu Laby
propose plusieurs
défis successifs; pour chacun d’entre eux, le but est de guider
pas-à-pas une fourmi vers la sortie d’un labyrinthe à l’aide d’un
programme. Chacun de ces défis sera l’occasion de découvrir ou
manipuler un concept de programmation.
Nous allons utiliser
Laby-jupyter
, une
réimplantation de laby dans Jupyter.
Chaque feuille ci-dessous correspond à un défi. Ouvrez les tour-à-tour dans l’ordre et suivez les instructions incluses. Déposez votre travail après chaque feuille.
Résoudre en Python le défi Chou, chèvre, loup.
♣ Dans l’ordre que vous souhaiterez :
Faire les feuilles laby supplémentaires en C++ :
Reprendre en Python tout ou partie des défis de laby. Pour cela, vous utiliserez le tableau de bord pour télécharger le devoir
CoursPython
.Résoudre en Python le jeu des cruches.
Exercice 4 : À faire pour la semaine prochaine#
Deux heures supplémentaires de Laby
! Vous pouvez travailler depuis
la salle libre-service du bâtiment 336 (salle 215, sauf si cours), ou
depuis tout dispositif connecté à internet.