Informatique 2


Pré-requis :

–        Informatique 1

 

Objectifs: 

–        Planifier et concevoir un programme utilisant des techniques structurées de développement.

–        Prévoir, concevoir, créer et employer les fonctions en décomposant un problème en sous-tâches.

–        Passer des arguments par référence ou par valeur entre fonctions. Différentes dimensions.

–        Écrire des instructions de programmation valides pour déclarer, initialiser, manipuler et passer les pointeurs comme arguments aux fonctions.

–        Utiliser et expliquer la relation entre les pointeurs et les valeurs qu’ils indiquent.

–        Utiliser et manipuler les structures de données.

–        Utiliser les outils du langage C pour l’implantation des solutions algorithmiques.

 

Contenu de l’enseignement :

 

Chap. 1 : Introduction au langage C. (Cours : 01h30)

Chap. 2 : Les fonctions. (Cours : 03h00)

Chap. 3 : Les fonctions récursives. (Cours : 03h00)

Chap. 4 : Concept d’algorithme récursif.

–        Passage d’algorithme récursif en algorithme itératif.

–        Exemples d’algorithmes récursifs et itératifs.

Chap. 5 : Les pointeurs et l’allocation dynamique de la mémoire. (Cours : 03h00)

Chap. 6 : Les structures de données complexes et les fichiers. (Cours : 12h00)

–        Les listes chaînées : concepts et implémentations.

–        Les piles et les files : concepts et implémentations.

–        Les fichiers : concepts et implémentations.

 

Travaux Pratiques :

–        TP 1 : Familiarisation avec l’environnement de développement C. (01h30)

–        TP 2 : Manipulation des tableaux et des enregistrements. (03h00)

–        TP 3 : Modularité : réalisation d’un TP utilisant des fonctions avec les différents types de passages de paramètres. (03h00)

–        TP 4 : Récursivité : réalisation d’un TP utilisant la notion de récursivité.

–        TP 5 : Les pointeurs et l’allocation dynamique de la mémoire. (03h00)

–        TP 6 : Manipulation des listes, des piles, des files et des fichiers : création des outils de manipulation des listes, des piles et des files tels que la création, l’insertion, la suppression. (12h00)

 

Références bibliographiques :

–        GAUDEL, M., Soria, M., and FROIDEVAUX, C. (1987). Types de données et algorithmes. Number vol. 1 in Collection didactique. Institut national de recherche en informatique et en automatique.

–        SEDGEWICK, R. (1991). Algorithmes en langage C. I.I.A. Informatique intelligence artificielle. Dunod.

 

Modalités d’évaluation :

Interrogation, Devoir surveillé, Travaux pratiques, Examen final