2024-2025 / INFO3001-1

Introduction à la programmation

Durée

24h Th, 20h Pr

Nombre de crédits

 Bachelier en langues et lettres anciennes et modernes5 crédits 
 Bachelier en langues et lettres anciennes, orientation classiques5 crédits 
 Bachelier en information et communication5 crédits 
 Bachelier en langues et lettres modernes, orientation germaniques5 crédits 
 Bachelier en histoire de l'art et archéologie, orientation générale5 crédits 
 Bachelier en histoire5 crédits 
 Bachelier en langues et lettres modernes, orientation générale5 crédits 
 Bachelier en histoire de l'art et archéologie, orientation musicologie5 crédits 
 Bachelier en langues et lettres anciennes, orientation orientales (Inscriptions closes)5 crédits 
 Bachelier en philosophie5 crédits 
 Bachelier en langues et lettres françaises et romanes, orientation générale5 crédits 

Enseignant

Vân Anh Huynh-Thu

Langue(s) de l'unité d'enseignement

Langue française

Organisation et évaluation

Enseignement au premier quadrimestre, examen en janvier

Horaire

Horaire en ligne

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.
Nous veillerons à illustrer tous les concepts techniques abordés dans le cours avec des exemples concrets (liés à vos disciplines, dans la mesure du possible).

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.
Lors des séances de travaux dirigés, vous résoudrez par vous-même, sur votre ordinateur portable ou sur feuille, des petits exercices de programmation. Une personne de l'équipe encadrance (l'enseignante, un assistant et/ou un élève-moniteur) sera présente lors des ces séances pour répondre à vos questions.

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)

Association d'un ou plusieurs MOOCs