Normaal gezien kan je de basis opdracht (mits je 2 opdrachten hebt geoefend) in een uur afkrijgen.
Dan zie je zelf maar of je jouw code efficienter en duidelijker maakt of aan de extras wil beginnen.
Als er wordt gevraagd om iets alfabetisch te sorteren dan moet je er gewoon voor zorgen dat je jouw elementen alfabetisch toevoegt. Je loopt dus gewoon de lijst af en kijkt of het in te voegen woord alfabetisch voor het huidige woord komt, in dat geval voeg je in en stop je met de lijst door te lopen.
Kijken of een woord voor een ander woord komt kan zo:
Psuedo-code (Oberon-achtig, recursief)
Code: Select all
PROC WoordVolgorde(woord1, woord2, index)
IF ORD(woord1[index]) < ORD(woord2[index]) THEN
RETURN TRUE;
ELSIF ORD(woord1[index]) > ORD(woord2[index]) THEN
RETURN FALSE;
ELSE
INC(index);
RETURN WoordVolgorde(woord1, woord2, index);
END WoordVolgorde;
Aanroepen met WoordVolgorde("Appel", "Peer", 0) zal TRUE geven en WoordVolgorde("Peer", "Appel", 0) zal FALSE geven.
Het maken van tabellen is ook niet zo moeilijk. (Bijna alle karakters zijn even groot, achter kortere woorden kan je (kolombreedte - lengte) spaties toevoegen en getallen rechts uitlijnen doe je met de tweede parameter van OutExt.Int)
Rechts uitlijnen met dank aan Pieter