OEFENINGEN:Landen en Grenzen
OEFENINGEN
bij
ALGORITMEN en GEGEVENSSTRUCTUREN
2009-2010
LES 7
Landen en grenzen
13 oktober 2009
Het bestand LandenEnGrenzen.xml bevat gegevens over
landen. Elk land heeft een unieke code. Aan de hand van de
<border>-elementen kun je de buurlanden van elk land identificeren.
Deel de landen in groepen in die niet met mekaar verbonden zijn (via een grens). Dit zijn
o.a. de eilanden (alhoewel: Frankrijk en Nederland hebben een gemeenschappelijke grens).
Hoeveel dergelijke groepen zijn er?
In tweede instantie gaan we op zoek naar "gevoelige grenzen". Een gevoelige grens is een
grens die, als zij afgesloten wordt, een gebied (een of meerdere landen) van de andere
afscheidt. Denk bv. aan een schiereiland. Geef een lijst van alle gevoelige grenzen.
Tips:
Maak eerst een plan van je aanpak. Begin niet halsoverkop te coderen.
Concentreer je eerst op de meest kritische onderdelen.
Wat is de connectie met wat je in de theorie van algoritmen geleerd hebt?
De gebruiker van je programma is enkel geïnteresseerd in echte namen van landen,
niet in codes.
Werkende code voor enkele simpele graafklassen vind je in
graaf.h.
Om XML in te lezen kan je gebruik maken van TinyXML. Enige opmerking: je kan voor
het gebruik de documentatie volgen, en tinyxml als
bibliotheek compileren. De andere methode is om gewoon 6 bestanden:
en de laatste 5 met include-statements mee te nemen in je eigen broncode, zoals gebeurd
is in
mijntest.cpp. Het alternatief is om het
LandenEnGrenzen.xml-bestand "met de hand" te parsen: de structuur is vrij
eenvoudig.