Descriptif
Ce cours est recommandé aux élèves suivant la filière MITRO
Programmation : en anglais sauf demande de tous les élèves présents.
Attention, à partir de 2025-2026, tous les élèves ne suivront pas le même contenu mais ce sera le même examen :
- Le cours de P4 commencera par un test qui séparera les étudiants entre confirmés et débutants
- Le cours de mardi matin de P3 s'adresse aux élèves débutants, soit parce qu'ils ont un conflit avec les cours de P4, soit parce qu'ils ont une expérience limitée de la programmation compétitive.
Cette UE est un entraînement aux concours de programmation en général, et au concours ICPC en particulier, via la résolution de problèmes pratiques par la programmation. Un investissement personnel est demandé en dehors des séances de cours pour résoudre des exercices de concours de programmation. Les séances de cours serviront de debriefing et de mise au point sur des sujets d'algorithmique, de programmation, ou de stratégie à adopter au concours. L'UE s'achève par un concours interne de programmation, ouvert à l'ensemble des étudiants de l'école, et qui sert de présélection pour le concours ICPC.
Objectifs pédagogiques
Acquis d'apprentissage
À l'issue de l'UE, l'élève sera capable de:
- Identifier ou concevoir les algorithmes efficaces pour répondre à des problèmes bien définis
- Traduire leurs algorithmes en code dans un langage de programmation comme C++
Compétences de rattachement (et justification)
- BC10.2 – Analyser et résoudre des problèmes mathématiques et algorithmiques nécessaires dans des étapes de réalisation d’un projet en s’appuyant, si besoin est, sur des simulations et dans l’objectif d’implémenter des solutions compétitives; Justification : L'UE entraîne les élèves à résoudre des problèmes algorithmiques
- BC10.3 – Analyser une résolution par des approches formelles ou mathématiques; Justification : L'UE entraîne les élèves à résoudre des problèmes algorithmiques qui peuvent requérir une approche formelle pour mieux comprendre le problème et le réduire à des problèmes connus.
- Leçon : 12
- Travaux Pratiques : 12
- Autre : 3
effectifs minimal / maximal:
10/30Diplôme(s) concerné(s)
UE de rattachement
- TC_2A_S2_TP : Tronc commun "Sciences économiques et sociales" (obligatoire)_S2
Pour les étudiants du diplôme Diplôme d'ingénieur
Le langage de l'UE est C/C++, et doit être maîtrisé par les élèves (fortement recommandé) ou appris au cours de l'UE (beaucoup de travail personnel à prévoir). Cette UE n'a pas de prérequis formels, mais une bonne expérience de la programmation (par exemple telle qu'acquise au sein d'une UE de programmation ou via des projets, personnels ou encadrés) est fortement recommandée pour la suivre.
Format des notes
Numérique sur 20Pour les étudiants du diplôme Echange international non diplomant
Vos modalités d'acquisition :
L'évaluation des acquis repose sur la résolution de problèmes algorithmique en temps limité.
Le rattrapage est autorisé (Note de rattrapage conservée)- le rattrapage est obligatoire si :
- Note initiale < 10
Le coefficient de l'UE est : 1
L'UE est évaluée par les étudiants.
Pour les étudiants du diplôme Diplôme d'ingénieur
Vos modalités d'acquisition :
L'évaluation des acquis repose sur la résolution de problèmes algorithmique en temps limité.
Le rattrapage est autorisé (Note de rattrapage conservée)- le rattrapage est obligatoire si :
- Note initiale < 10
Le coefficient de l'UE est : 1
L'UE est évaluée par les étudiants.
Programme détaillé
- Présentation générale
- Structures de la bibliothèque standard C++
- Débogage
- Stratégie générale de résolutions et schémas d'algorithmes
- Algorithmes de graphes
- Astuces de bits
- Algorithmes sur chaînes de caractères
- Géométrie algorithmique
- Problèmes mathématiques