v2.1.2 (1856)

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

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.

nombre d'heure en présentiel

48

nombre de blocs

32

Volume horaire par type d'activité pédagogique : types d'activité

  • Leçon : 23
  • Travaux dirigés : 3
  • Travaux pratiques : 21

Diplôme(s) concerné(s)

UE de rattachement

Format des notes

Numérique sur 20

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

Vos modalités d'acquisition :

40% de la note finale pour le premier CC + 60% pour le second CC

 

Le rattrapage est autorisé (Note de rattrapage conservée écrêtée à une note seuil)

    Le coefficient de l'UE est : 32

    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