v2.11.0 (5776)

Enseignement scientifique & technique - INF106 : Systèmes d'exploitation et langage C - Suite

Domaine > Informatique.

Descriptif

Les objectifs de cet enseignement sont d'une part, l'acquisition d'une méthodologie de programmation efficace et, d'autre part, la pratique d'au moins un langage. Le C a été choisi comme langage car c'est un des langages scientifiques les plus utilisés. Il permet une programmation de haut niveau (structures de contrôle, types de données, récursivité ...) et se prête bien à la compilation séparée. De plus, sa connaissance permet un passage plus aisé vers d'autres langages comme le langage Java. Au cours de cet enseignement, les élèves utiliseront des stations de travail.

Objectifs pédagogiques

Dans le but d'atteindre les objectifs de cet enseignement, un parcours approfondi du langage est prévu (10 leçons d'1h30), incluant les notions de formalisation d'un algorithme, prototypage, récursivité et d'allocation dynamique. L'enseignement laisse une large part à la pratique, sous forme de TDs, TPs (piles, files, arbres, graphes, codage de huffman) et de microprojets.

27 heures en présentiel (18 blocs ou créneaux)
réparties en:
  • Leçon : 15
  • Travaux Pratiques : 10.5
  • Contrôle de connaissance : 1.5

23 heures de travail personnel estimé pour l’étudiant.

effectifs minimal / maximal:

2/

Diplôme(s) concerné(s)

Format des notes

Numérique sur 20

Littérale/grade européen

Pour les étudiants du diplôme Diplôme d'ingénieur

Vos modalités d'acquisition :

Contrôle continu (TP)

Contrôle de connaissance à la fin de l'unité d'enseignement.

Unité d’enseignement validée lorsque la note finale de l’UE est supérieure ou égale à 10. Pour chaque unité d’enseignement validée, des crédits ECTS associés sont acquis, et le sont de manière définitive.

 

L'UE est acquise si Note finale >= 10
  • Crédits ECTS acquis : 2 ECTS
  • Crédit de BCI acquis : 2

La note obtenue rentre dans le calcul de votre GPA.

L'UE est évaluée par les étudiants.

Programme détaillé

Notions générales d'algorithmique :
Formulation d'un problème et recherche d'un algorithme
Formalisation d'un algorithme, notion de complexité
Enchaînement des actions et un exemple de programme en C Langage C : Structure d'un programme
Types prédéfinis
Évaluation d'expressions
Prototypage et définition de fonctions
Programmation itérative et récursive
Définition de types Pointeurs et allocation dynamique
Les E/S : fichiers standards et autres (fichiers "texte" et "binaires")
Emploi du graphique
Modules (fonctions et librairies prédéfinies, construction et utilisation de modules spécifiques)
Structures de données, algorithmes associés: mise en oeuvre
Listes, files, piles :
- Tables de hash-code
- Représentation des graphes,
... Arbres binaires :
- Arbre binaire de recherche
- Codage de Huffman, ...
Documents distribués & bibliographie
Polycopié ENST "Algorithmes et Langage C" distribué "Langage C", Philippe Dax, 7ème édition, Eyrolles 1992
"Le langage C", Kernighan et Ritchie, 2e édition, Masson 1990

Les leçons, TD et TP se font en groupes. Les 25 TH de cet enseignement seront répartis de la manière suivante :
- Leçons : 10 TH - Contrôle (promo) : 2H - 4 TH de TP d'initiation (en salle informatique) - Travaux dirigés (préparations de 3 TP) : 3 TH - Travaux pratiques de compléments (en salle informatique) : 2 TH - Travaux pratiques préparés (en salle informatique) : 6 TH Les TH des 3 TP avancés servent à la réalisation de 3 dossiers de TP qui serviront à l'évaluation. Nous rappelons que la présence à toutes les séances de TP (initiation, préparation et réalisation) est obligatoire et sera vérifiée.

Mots clés

Formalisation d'un algorithme, prototypage, récursivité, allocation dynamique. Parcours approfondi du langage. Large place à la pratique et micro-projets.
Veuillez patienter