Durée
24h Th, 20h Pr
Nombre de crédits
Enseignant
Langue(s) de l'unité d'enseignement
Langue française
Organisation et évaluation
Enseignement au premier quadrimestre, examen en janvier
Horaire
Unités d'enseignement prérequises et corequises
Les unités prérequises ou corequises sont présentées au sein de chaque programme
Contenus de l'unité d'enseignement
Le cours a pour objectif de vous initier à l'algorithmique et à la programmation en langage Python.
Algorithmique : Un algorithme est une suite d'opérations précises à effectuer pour résoudre un problème donné.
Programmation : La programmation est l'écriture d'un algorithme dans un langage compréhensible par un ordinateur. Un langage de programmation repose notamment sur différents éléments de base (séquence, choix conditionnel, boucle, etc.) et sur des structures de données appropriées (listes, tableaux, etc.). Le langage de programmation abordé dans ce cours est le Python.
La matière abordée sera la suivante (sous réserve de modifications) :
- Première introduction à l'algorithmique avec le langage graphique Scratch.
- Eléments de base du langage Python (variables, opérateurs, choix conditionnels, boucles, fonctions).
- Structures de données de base en Python (chaînes de caractères, listes, tableaux, tuples, sets, dictionnaires).
- Principes de l'algorithmique.
- Concepts de la programmation orientée objet en Python.
Acquis d'apprentissage (objectifs d'apprentissage) de l'unité d'enseignement
A l'issue du cours, vous serez capables de construire des algorithmes permettant de résoudre des problèmes simples et vous serez capables de programmer ces algorithmes en langage Python.
Savoirs et compétences prérequis
Il n'y a pas de prérequis.
Activités d'apprentissage prévues et méthodes d'enseignement
L'apprentissage se fera au travers de:
- Cours théoriques hebdomadaires de 2h, donnés par l'enseignante.
- Séances de travaux dirigés hebdomadaires de 2h également, encadrées par l'enseignante, un assistant et/ou un élève-moniteur.
- Réalisations de challenges de programmation.
Les challenges de programmation viseront à mettre en pratique les notions théoriques vues au cours. Ils nécessiteront typiquement d'analyser un problème, de déterminer le meilleur algorithme pour le résoudre et d'implémenter cet algorithme en langage Python.
Les challenges de programmation sont à réaliser à la maison. Il est donc attendu que vous possédiez un ordinateur personnel.
Mode d'enseignement (présentiel, à distance, hybride)
Cours donné exclusivement en présentiel
Informations complémentaires:
Le cours se donne au premier quadrimestre.
Supports de cours, lectures obligatoires ou recommandées
Plate-forme(s) utilisée(s) pour les supports de cours :
- eCampus
Informations complémentaires:
Les supports suivants couvrent la matière du cours et sont obligatoires :
- Notes de cours couvrant la matière vue aux cours théoriques.
- Transparents utilisés aux cours théoriques.
- Enoncés des exercices abordés lors des séances de travaux dirigés.
- Enoncés des challenges.
Ces supports seront progressivement disponibles sur eCampus durant le quadrimestre. En particulier, le contenu des notes de cours sera progressivement ajouté durant le quadrimestre. Le contenu nécessaire pour la préparation de l'interrogation de mi-quadrimestre sera disponible au plus tard trois semaines avant l'interrogation. La version définitive des notes de cours sera disponible au plus tard six semaines avant l'examen.
Modalités d'évaluation et critères
Examen(s) en session
Toutes sessions confondues
- En présentiel
évaluation écrite
Evaluation continue
Interrogation(s) hors session
Informations complémentaires:
Vous serez évalué.e.s de deux manières :
1. Evaluation continue
4 challenges de programmation seront donnés au fur et à mesure du quadrimestre. Chaque challenge consistera en un problème à résoudre. Vous devrez soumettre votre solution (sous forme de programme Python) sur la plateforme de soumission de Montefiore (https://submit.montefiore.uliege.be/).
Pour chaque challenge, il y aura la possibilité de soumettre une solution trois fois maximum jusqu'à la date butoir. Seule comptera la dernière soumission (i.e., les précédentes sont écrasées). Une fois la date butoir passée, il ne sera plus possible de soumettre de solution.
2. Evaluations Ponctuelles
- Interrogation de mi-quadrimestre : Une interrogation écrite, à livre fermé, a lieu durant le mois de novembre. Elle porte sur la matière abordée jusque là (typiquement les différents éléments de base du langage Python) et comporte principalement des exercices. Elle dure 2h. Les ordinateurs ne sont pas autorisés.
- Examen durant la session : Il s'agit d'un examen écrit, se faisant à livre fermé, portant sur l'entièreté de la matière vue durant le quadrimestre. L'examen comporte principalement des exercices. Les ordinateurs ne sont pas autorisés.
Pour la première session, la pondération suivante est utilisée pour obtenir la note finale :
- Challenges : 30%
- Interrogation : 10%
- Examen : 60%
Seconde session
En cas d'échec en première session (i.e., la moyenne pondérée des challenges, de l'interrogation et de l'examen est inférieure à 10/20), vous aurez la possibilité de représenter l'examen en seconde session. Dans ce cas, la note finale ne sera constituée que de celle de l'examen (l'interrogation et les challenges n'interviennent plus).
Stage(s)
Remarques organisationnelles et modifications principales apportées au cours
Tous les détails organisationnels (calendrier, dates butoirs pour les challenges, etc.) seront mis sur eCampus.
Contacts
Enseignante : Vân Anh Huynh-Thu.
E-mail : vahuynh@uliege.be
Bureau : 1.103, B28 (Institut Montefiore, Sart-Tilman)