IUT R&T - 1ère année - Informatique
Programmation et algorithmique 2


TP n°4

A la fin du TP, envoyer sur l'ENT le programme contenant une solution de l'exercice 1 ainsi que les algorithmes et tests associés (même principe que pour le TP1)

EXERCICE 1

On souhaite gérer avec des fichiers un parc de machines situées dans différentes salles.

Télécharger les fichiers tp4ORDIS.txt et tp4SALLES.txt, qui vous sont fournis avec ce sujet : 1. Définir en conséquence deux types structurés permettant de maintenir en mémoire une copie des deux fichiers tp4ORDIS.txt et tp4SALLES.txt : 2. définir une variable tp4ordis de type Listeordis et une variable tp4salles de type ListeSalles.

3. Ecrire une fonction ChargerOrdis qui charge dans la variable tp4ordis le contenu structuré du fichier tp4ORDIS.txt. La fonction retournera le nombre d'ordinateurs lus dans le fichier ou (−1) s'il y a eu un problème de fonctionnement, après avoir mis à jour le nombre d'ordinateurs présents dans la structure.
N.B. Le nombre d'ordinateurs présents dans le fichier est dans l'intervalle [0..750].

4. Ecrire une fonction ChargerSalles qui charge dans la variable tp4salles le contenu structuré du fichier tp4SALLES.txt. La fonction retournera un code de bon fonctionnement après avoir mis à jour le nombre de salles présentes dans la structure.
N.B. Le nombre de salles présentes dans le fichier est dans l'intervalle [0..30].

5. Définir un type structuré Listeattrib et une variable tp4attrib de ce type qui mémorisera la répartition des ordinateurs dans les différentes salles. Chaque ordinateur d'une salle aura sa propre adresse IP. Les adresses IP, de la forme 192.168.1.y avec 1≤y≤250, seront attribuées par ordre croissant de valeur de y puis de x. Les paramètres de la première adresse IP non attribuée sera conservée en mémoire.

6. Ecrire une fonction Attribuer qui effectue la répartition des ordinateurs dans les salles. La fonction retournera un code négatif s'il n'y a pas assez d'ordinateurs pour remplir les salles ou s'il n'y a plus d'adresse IP disponible.

6. Ecrire une fonction SauverAttribution qui enregistre dans un fichier nommé tp4ATTRIB.txt la répartition des ordinateurs dans les salles avec leurs MAC-address et leur adresses IP.

7. Le programme principal effectuera la gestion du parc informatique. Ce programme sera testé avec les fichiers fournis. Une copie du fichier tp4ATTRIB.txt sera placée en commentaire à la fin du compte-rendu.

8. A faire hors TP
Une fois les attributions créées pour remplir les salles, créer pour chaque salle, un fichier nomdelasalle.txt. Chacun de ces fichiers contiendra la liste des ordinateurs (représentés par leur MAC-address) présents dans la salle et le numéro IP-V4 qui leur a été attribué lors de leur installation dans la salle.

9. A faire hors TP
Ecrire une fonction Journaliser qui enregistre dans un fichier nommé tp4PBS.log les pannes survenues sur les ordinateurs. Une dizaine de pannes seront créées aléatoirement à partir du numéro IP attribué. Chaque ligne du fichier sera de la forme : Salle   IP   MAC.


EXERCICE 2 A faire hors TP

Compléter le programme du TP n°1 (éventuellement modifié lors du TP n°2) avec une procédure sauvegardant dans un fichier nommé coursebateaux.txt le résultat d'une course de bateaux. Chaque ligne du fichier correspondra à un participant avec son nom, puis ses notes successives de manches, puis son score, séparés par un espace. La procédure sera testée avec l'exemple donné dans le sujet du TP n°1.

EXERCICE 3 A faire hors TP

Compléter le programme du TP n°3 avec une procédure sauvegardant dans un fichier nommé championnatligue.txt le résultat d'un championnat. Chaque ligne du fichier correspondra à une équipe avec son nom, puis ses résultats successifs de matchs, puis son score, séparés par un espace. La procédure sera testée avec l'exemple donné dans le sujet du TP n°3.