Indications pour la lecture du graphe

Recherche et création des stations

Lors de la lecture du graphe, on a besoin d'associer un entier à chaque station, son indice dans le tableau. On a aussi besoin de cette fonction lorsqu'on demande les stations de départ et d'arrivée. On peut donc faire les deux recherches avec la même fonction. Il suffit d'écrire une fonction qui prend en entrée un nom de station et un booléen (int). Cette fonction cherche la station dans le tableau des noms de stations. Si elle la trouve, elle renvoie son numéro. Sinon, selon la valeur du booléen, elle renvoie -1 ou elle crée une nouvelle station dans le tableau et renvoie son numéro.

Lecture dans le fichier

Les lignes du fichier ne font pas plus de 80 caractères. Le traitement se fait ligne par ligne. Si le premier caractère de la ligne n'est pas un '#', la ligne de métro, sa direction et le nom de la station sont récupérés (voir peut-être les fonctions strtok et strdup dans <string.h>). Grâce à la fonction précédente, un entier est associé à la station, et l'arête est ajoutée si le nom de la ligne et la direction sont les mêmes qu'à la ligne précédente.

Retour au sujet