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