prolog: gestion tram
Ex : si on veut aller de nation à mairie de lilas on obtiendra, itintard(nation,mairie_lilas,[10,10],L). L = [[nation, 2, [8, 46], [10, 9]], [[villiers, 3, [9, 19]], [gambetta, bis_3,
[10, 1]], [porte_lilas, [10, 6]]]].
Au lieu d’avoir pour comme dernier élément de la deuxième liste,
[porte_lilas, 11, [10, 6]].
La seconde a été le prédicat itintot.
Les grands problèmes ont donc été l’implémentation des prédicats majeurs de ce projet. Tout d’abord itintot qui d’ailleurs présente un défaut, et ensuite itintard qui découle de itintot mais nécessite des aménagements, comme nous l’avons dis précédemment, afin de partir de la destination pour finalement arriver au départ. Le défaut de itintot est que lorsque l’on parcourt une ligne, si deux stations de cette ligne on une correspondance identique on rappelle le prédicat récursivement uniquement sur la première (si la deuxième ne contient que la ligne commune),
Ex : Si on se trouve à gare du nord et que l’on veut aller à poissonnière, on renvoi le prédicat sur les correspondances qui sont dans l’ordre d’apparition sur la ligne, Jaurès, Stalingrad, et république. Ici, on ne renvoie pas le prédicat sur gare de l’est puisque sa correspondance est la ligne 7, qui passe également par Stalingrad. Le programme vérifiant d’abord Stalingrad, élimine de sa liste la ligne 7 il reverra donc pas récursivement sur gare de l’est qui ne contient que la ligne